scrapy结构以及常用命令

本文详细介绍Scrapy爬虫框架的目录结构、命令管理及工具命令,包括项目创建、爬虫文件生成、测试与运行等关键操作,为爬虫开发者提供全面指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.认识scrapy目录结构

          __init__.py文件为项目的初始化文件,主要写的是一些项目的初始化信息

          items.py  文件为爬虫项目的数据容器文件,朱亚欧用来定义我们要获取的数据

          pipelines.py 文件为爬虫项目的管道文件,主要用来对items里面定义的数据进一步加工与处理

          setting.py文件为爬虫项目的设置文件,主要为爬虫项目的一些设置信息,

          spiders  文件夹下放置的是爬虫项目中爬虫部分相关的文件

          spiders/__init__.py文件为爬虫项目中爬虫部分的初始化文件,主要对spiders进行初始化。

2.用scrapy进行爬虫项目管理(命令)

           创建一个爬虫项目:

                                         scrapy startproject  myfirstpjt项目名

            创建成功后,可以通过    "cd 项目名" 进入爬虫项目所在的目录

            打开爬虫项目所在文件夹,发现此时多一个名为myfirstpjt的文件夹,该文件夹就是刚才我们所创建的爬虫项目

            使用scrapy startproject来创建爬虫项目,在创建的时候我们也可以加上一些参数进行控制,通过scrapy startproject

                    -h 调出startproject的帮助信息,可以看到具体可以添加那些参数。

            参数分别进行分析:

                    1.--logfile=FILE  参数主要用来指定日记文件,其中FILE为指定的日记文件的路径地址。

                                 实现代码:scrapy startproject --logfile=“..log.log”  mypjtl         

                                                   scrapy startproject --logfile=“日记路径”  项目名称   

                      2.--loglevel =LEVEL,-L LEVEL 参数主要控制日记信息的等级,默认为DEBUG模式,

                                 

                                 实现代码:scrapy startproject --loglevel=DEBUG  mypjt2

                      3.通过--nolog参数,可以控制不输出日记信息,比如,实现创建一个爬虫项目,并且不输出日记信息

                                 实现代码:scrapy startproject --nolog  mypjt3

                      这是在创建爬虫项目中常见的重要参数,如果要删除爬虫项目,直接删除该爬虫项目对应的文件夹来实现。

3.常用工具命令

           scrapy 中,工具命令分为,一种为全局命令,一种为项目命令

           全局命令不需要在依靠scrapy项目就可以再全局中直接运行,而项目命令必须要在scrapy项目中才可以运行。

           1.全局命令:

                      查看全局命令有哪些。运行,scrapy -h   会出现所有的全局命令,如下:

                      

                   (1).  fetch命令:

                                      fetch  命令主要用来显示爬虫爬取的过程。(在scrapy项目目录外使用,则会调用scrapy默认的爬虫来                                                     进行网页爬取,在项目内使用该命令,会调用该项目中的爬虫进行网页爬取)

                                      scrapy fetch -h 列出所有可以使用   

                                       

                                       scrapy fetch --headers  --nolog  http://news.sina.com.cn  

                                       --headers  显示爬取时候的头部信息 

                            (2)runspider命令     :

                                         先编写一个scrapy爬虫文件,first.py,运行爬虫文件,并将日记等级设置设置为info

                                          实现代码:scrapy runspider --loglevel=INFO first.py

                             (3)setting命令:

                                             通过scrapy总的setting命令查看scrapy对应的配置信息  ,在目录内使用,查看项目的配置信息,在                                                        目录为使用,查看的是scrapy默认配置信息

                             (4)shell命令:  

                                              通过shell命令,可以启动scrapy的交互终端,创建一个交互终端环境,并设置为不输出日记信息。

                                               实现代码:scrapy shell 网址  --nolog  

                              (5)startproject命令:

                                                 主要用于创建项目

                               (6)version命令:

                                                显示scrapy版本信息

                                (7)view命令:

                                                 通过view命令,可以实现下载某一个网页并用浏览器查看的功能

                                                  实现代码:scrapy view 网址

           2.项目命令

                      scrapy项目命令,主要有:bench ,check,crawl,edit,genspider,list,parse

                      注意点:全局命令,可以在非scrapy爬虫项目文件夹中使用,同时也可以在项目文件夹中使用。项目命令,一般只                                       能在scrapy爬虫项目文件夹中使用。

                    (1)Bench命令

                              使用bench命令可以测试本地硬件性能,当我们运行,scrapy bench的时候,会创建一个本地服务器并且会以                                        最大的速度爬行,在此为了测试本地硬件的性能,不进行内容的处理。

                     (2)genspider命令

                               可以使用genspider命令来创建scrapy爬虫文件,这是一种快速创建爬虫文件的方式,需要在爬虫项目目录里                                         面使用

                               可以使用-l参数当前可以使用的爬虫模板,

                                实现代码:scrapy genspider -l

                                可以看到,爬虫模板有:basic,crawl,csvfeed,xmlfeed     此时,可以基于其中任意一个爬虫模板来生成                                          一个爬虫文件,格式为“scrapy genspider -t 模板 爬虫名称 爬取域名

                                查看爬虫模板的内容,通过  -d  参数实现查看某一个爬虫模板的内容,通过“scrapy genspider -d                                                       csvfeed(模板名)”

                      (3)check命令

                               爬虫测试比较麻烦,所以在scrapy中使用合同(contract,是一种交互式的检查方式)的方式对爬虫进行测试

                               使用scrapy中的check命令,可以实现对某一个爬虫文件进行合同检查。

                               实现代码: scrapy  check 爬虫名        注意:check后面是爬虫名称,不是爬虫文件,没有.py的后缀 

                       (4)crawl 命令

                               可以通过crawl命令启动某一个爬虫,启动格式是:‘scrapy crawl 爬虫名’ 

                       (5)list命令

                                通过scrapy中的list命令,可以列出当前可使用的爬虫文件

                         (6)edit命令:   这个命令在linux中比较方便,

                                在linux中使用edit命令编辑某一个爬虫,首先使用,scrapy  list 先列出当前存在的爬虫文件。

                                找到需要编辑的文件。

                                scrapy edit  爬虫文件

                        (7)parse命令

                                 通过parse命令,可以实现获取指定的url网址,并使用对应的爬虫文件进行处理和分析

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值