Python爬虫-Scrapy框架的基本使用

目录

1.安装scrapy

2.创建scrapy项目

3.创建爬虫文件

4.项目组成

5.运行爬虫

 6.scrapy shell 的使用

7.settings.py相关配置


1.安装scrapy

pip install scrapy 

  

pip install scrapy -i 换源安装ip地址

安装报错

1.如果安装失败,首先要查看pip是否是最新版本的

    

2.如果提示包含Twisted的异常:指的是这个库安装报错,无法通过pip进行安装

解决方法:

     

    1.访问https://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted

       
    2.找到对应的解释器下载版本
        Twisted‑20.3.0‑cp37‑cp37m‑win_amd64.whl  这是python3.7的版本
        Twisted‑20.3.0‑cp38‑cp38‑win_amd64.whl   这是python3.8的版本

        

        cp后面是python版本,amd64代表64位

        
    3.下载之后,在该文件路径打开CMD窗口

         
    4.执行pip install Twisted‑20.3.0‑cp...  即可

         
    5.继续执行pip install scrapy

2.创建scrapy项目

在终端进入想要建立scrapy项目的文件夹下后,输入

        

        scrapy startproject 爬虫项目名

3.创建爬虫文件

跳转到scrapy项目文件夹下后,输入

        scrapy genspider 爬虫名称 爬虫的域

        

 爬虫名  : 开启/运行 爬虫的时候,需要通过爬虫名称开启爬虫

       
 爬虫域  : 域名,告诉爬虫,我这个项目,只爬取属于什么域的内容

        
注意:爬虫项目名  与  爬虫名 不可同名

4.项目组成

1.项目文件下的项目名下的py文件就是你要书写的爬虫文件

         

2.items.py用于数据建模, 爬取的目标内容必须在此建模不要写中文注释

       

3.middlewares.py 是下载模块是爬虫中间件和下载中间件 

  

4.pipelines.py 做管道保存,所有数据保存的代码写在此处,框架要求这样

  

5.settings.py 是配置文件默认20行 roboots协议是开启的,启动项目后先设为FALSE,或者

  

直接注释掉;后面如果要开启管道的时候需要在settings文件中开启

5.运行爬虫

运行爬虫文件不能直接右键点击运行,需要在终端中进行运行。

  

1. 直接:scrapy crawl 爬虫名字

  
2.忽略日志信息:scrapy crawl 爬虫名字 --nolog  

 在pycharm中运行爬虫文件:

  

        需要新建一个启动文件,例如:start.py

  

注意:启动文件要建立在第一层文件夹里,即与scrapy.cfg文件同级

 6.scrapy shell 的使用

我们想要爬虫中使用 xpath,Bs4,正则,css选择器等来提取想要的数据时,由于 Scrapy是一个重

    

量级框架,毎次运行起来都要等待段时间,因此要去验证我们书写的规则是否正确,是—个比较

  

麻烦的事情,因此 Scrapy提供了一个shell,用起来方便测试规则

打开scrapy shell

打开cmd终端,进入到 Scrapy项目所在目录,进入到 Scrapy框架所在的环境中,

        

输入命令scrapy shell url(对应的网址)

            

就会进入到 scrapy的shell环境中,在这个环境中,你可以跟在爬虫的 parse方法中一样使用了

         

cd lianjiascrapy

                  
scrapy shell https://xy.lianjia.com/zufang/

              
...测试执行爬虫中要写的代码...

7.settings.py相关配置

1.要将20行的roboots协议注释掉或者改为False

            

2.如果请求头只设置user-agent的话,将17行解开并修改即可

          

3.如果请求头要设置多个,将40行的DEFAULT_REQUEST_HEADERS修改即可

             

4.如果要保存数据,将65行的ITEM_PIPELINES注释解开即可

             

注意:以上的多少多少行可能会与你们的有所不同,按照你们自己代码的所在行为准

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值