「Python3 爬虫标准化项目」环境搭建与爬虫框架Scrapy入门 末蓝、 2022-10-27 12:15 172阅读 0赞 ### 文章目录 ### * 内容介绍 * 环境搭建 * * window系统环境 * Linux系统环境 * Scrapy 爬虫框架 * * 数据采集流程概述 # 内容介绍 # 开发环境为 Python3.6,Scrapy 版本 2.4.x ,Gerapy 版本 0.9.x ,爬虫项目全部内容索引目录 [看懂Python爬虫框架,所见即所得一切皆有可能][Python] 本系列内容做为标准化爬虫的引导,为广大的爬虫工程师分享爬虫工作中的经验,用作者自身的经验去理解Python3在进行爬虫工作中的经验。 # 环境搭建 # ## window系统环境 ## **安装Anaconda** Anaconda指的是一个开源的Python发行版本,其包含了Python、conda等N多个科学包及其依赖项。简单理解为一个python的傻瓜捆绑包。 [Anaconda下载地址][Anaconda] ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIwMjg4MzI3_size_16_color_FFFFFF_t_70] 因为作者穷买不起苹果系列的电脑,这里以win系统安装举例(Linux必须带图形界面的操作系统才可以,比如Ubuntu系统) 打开安装程序之后一直点下一步。 ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIwMjg4MzI3_size_16_color_FFFFFF_t_70 1] 安装到最后点击关闭就可以了,然后打开命令行CMD,显示下图证明安装成功。 ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIwMjg4MzI3_size_16_color_FFFFFF_t_70 2] **安装Pycharm** [社区版&专业版 Pycharm 下载地址][Pycharm] 下载后是压缩包根据自己的情况进行选择。 启动程序在图示的位置启动即可。 ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIwMjg4MzI3_size_16_color_FFFFFF_t_70 3] **安装Scrapy** pip install scrapy==2.4.0 ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIwMjg4MzI3_size_16_color_FFFFFF_t_70 4] ## Linux系统环境 ## 以腾讯云 Centos 7.x 版本举例,其他版本系统会略有不同,安装有问题可以留言。 **Python3 安装** '''安装必备包''' yum groupinstall 'Development Tools' yum install -y ncurses-libs zlib-devel mysql-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel yum -y install gcc '''下载python3.6.5''' cd /usr/local/ wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tar.xz '''解压''' tar -xf Python-3.6.5.tar.xz mkdir python3 mv Python-3.6.5 python3 cd python3/Python-3.6.5 ./configure --prefix=/usr/local/python3 --enable-optimizations make make altinstall '''修改软连接''' ln -s /usr/local/python3/bin/python3.6 /usr/bin/python3 ln -s /usr/local/python3/bin/pip3.6 /usr/bin/pip3 '''删除软连接,如果设置软连接出错使用''' rm -rf /usr/bin/python3 rm -rf /usr/bin/pip3 '''检查是否安装版本正确''' python3 --version ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIwMjg4MzI3_size_16_color_FFFFFF_t_70 5] **安装Scrapy** pip3 install scrapy==2.4.0 ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIwMjg4MzI3_size_16_color_FFFFFF_t_70 6] # Scrapy 爬虫框架 # Scrapy,Python开发的一个快速、高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据。Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试。 其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的, 后台也应用在获取API所返回的数据或者通用的网络爬虫。 了解学习全部Scrapy模块学习请点传送门 [【Scrapy 2.4.0 文章目录】源码解析篇:全部配置目录索引][Scrapy 2.4.0] ## 数据采集流程概述 ## ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIwMjg4MzI3_size_16_color_FFFFFF_t_70 7] 1. 调度器(Scheduler): 把它假设成为一个URL(抓取网页的网址或者说是链接)的优先队列,由它来决定下一个要抓取的网址是 什么,同时去除重复的网址(不做无用功)。用户可以自己的需求定制调度器。 2. 下载器(Downloader): 所有组件中负担最大的,它用于高速地下载网络上的资源。Scrapy的下载器代码不会太复杂,但效率高,主要的原因是Scrapy下载器是建立在twisted这个高效的异步模型上的(其实整个框架都在建立在这个模型上的)。 3. 爬虫(Spider): 用户定制自己的爬虫(通过定制正则表达式等语法),用于从特定的网页中提取自己需要的信息,即所谓的实体(Item)。 用户也可以从中提取出链接,让Scrapy继续抓取下一个页面。 4. 实体管道(Item Pipeline): 用于处理爬虫(spider)提取的实体。主要的功能是持久化实体、验证实体的有效性、清除不需要的信息。 5. Scrapy引擎(Scrapy Engine): Scrapy引擎是整个框架的核心.它用来控制调试器、下载器、爬虫。实际上,引擎相当于计算机的CPU,它控制着整个流程。 [Python]: https://blog.csdn.net/qq_20288327/article/details/120575605 [Anaconda]: https://www.anaconda.com/products/individual [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIwMjg4MzI3_size_16_color_FFFFFF_t_70]: /images/20221024/7965be999e0a48bb92337872fd4443b7.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIwMjg4MzI3_size_16_color_FFFFFF_t_70 1]: /images/20221024/7a4df06aaec14a3c82b48c7b2d33abe9.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIwMjg4MzI3_size_16_color_FFFFFF_t_70 2]: /images/20221024/c47f1ac55254465a8e2994892c5a916a.png [Pycharm]: http://www.wjml.tech/GetArticleDetail/?article_slug=20210204101745 [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIwMjg4MzI3_size_16_color_FFFFFF_t_70 3]: /images/20221024/966cc264673a41a8a5d2081fd9593f49.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIwMjg4MzI3_size_16_color_FFFFFF_t_70 4]: /images/20221024/4ae26154a5814beca65d034b22bb3013.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIwMjg4MzI3_size_16_color_FFFFFF_t_70 5]: /images/20221024/73da7c2d7cca4e83ab162cc67690954b.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIwMjg4MzI3_size_16_color_FFFFFF_t_70 6]: /images/20221024/6a4ba871c60844dab02d074cc432d73b.png [Scrapy 2.4.0]: https://blog.csdn.net/qq_20288327/article/details/113618550 [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIwMjg4MzI3_size_16_color_FFFFFF_t_70 7]: /images/20221024/3ed92a2145ca438097bddb6c2b6b9cd3.png
还没有评论,来说两句吧...