栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python爬虫从入门到精通:(26)scrapy框架03

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python爬虫从入门到精通:(26)scrapy框架03

scrapy的简单爬虫配置


上节课,我们爬取的内容并没有看到想要的结果。
上节:scrapy框架的基本使用

因为我们还需要配置下scrapy


  • settings.py

    1. 禁止robots

      上图中,我们看到了xxx/robots.txt 字样,说明scrapy框架与robots协议有关。

      scrapy默认是遵守robots协议的,我们在配置文件把它更改下

      # 在settings.py文件中,找到 ROBOTSTXT_OBEY = TRUE
      # 把它改为False
      ROBOTSTXT_OBEY = False
      
    2. 指定日志类型:LOG_LEVEL = 'ERROR'

      刚刚其实打印的是日志信息

      执行工程后,默认会输出工程所有的日志信息。

      指定类型日志的输出:LOG_LEVEL= 'ERROR'

      # 在settings.py文件中,添加一行代码(注意是直接添加) 
      LOG_LEVEL= 'ERROR'
      

    1. UA伪装

      我们知道,爬取网站基本都是需要headers的。那么我们在scrapy中该如何设置呢?

      # 配置文件中,USER_AGENT是默认注释的。我们不要注释它,并更改为自己的user-agent内容
      USER_AGENT = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36'
      
  • 爬虫文件spiderName内容阐述

    • name:爬虫文件的名称,该文件的唯一标识
    • allowed_domains:允许爬取的域名:通常注释掉
    • start_urls:起始的url列表,存储的都是url,url可以被自动进行get请求的发送
    • parse方法:请求后的数据解析操作

    我们来更改下爬虫文件代码执行下:

    import scrapy
    
    class DemoSpider(scrapy.Spider):
        # 爬虫文件名称
        name = 'demo'
    
        # 允许的域名:通常过滤掉
        # allowed_domains = ['www.xxx.com']
    
        # 起始的url列表:只可以存储url
        # 作用:列表中存储的url都会被进行get请求的发送
        start_urls = ['https://www.baidu.com/', 'https://www.sogou.com']
    
        # 数据解析
        # parse方法调用的次数完全取决于请求的次数
        # 参数response:标识的就是服务器返回的响应对象
        def parse(self, response):
            print(response)
    

这样,我们就顺利爬取到了内容。

之所以只看到了网址,那是因为我们还没有进行数据分析!下节课我们进行数据分析。

关注Python涛哥!学习更多Python知识!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/308552.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号