CrawlSpider(全站数据爬取)

  • 实现网站的全站数据爬取

    • 就是将网站中所有页码对应的页面数据进行爬取。
  • crawlspider其实就是scrapy封装好的一个爬虫类,通过该类提供的相关的方法和属性就可以实现全新高效形式的全站数据爬取。

  • 使用流程:

    • 新建一个scrapy项目

    • cd 项目

    • 创建爬虫文件(*):

      • scrapy genspider-t crawl spiderName www.xxx.com

      • 爬虫文件中发生的变化有哪些?

        • 当前爬虫类的父类为CrawlSpider

        • class JianliSpider(CrawlSpider):
        • 爬虫类中多了一个类变量叫做rules

        • link = LinkExtractor(allow=r"free_\d+\.html")
          
          rules = (Rule(link, callback="parse_item", follow=False))
          • LinkExtractor:链接提取器

            • 可以根据allow参数表示的正则在当前页面中提取符合正则要求的链接
          • Rule:规则解析器
            • 可以接收链接提取器提取到的链接,并且对每一个链接进行请求发送
            • 可以根据callback指定的回调函数对每一次请求到的数据进行数据解析

最新文章

  1. 【Swift 2.1】为 UIView 添加点击事件和点击效果
  2. angularjs指令系统系列课程(5):控制器controller
  3. nginx缓存配置的操作记录梳理
  4. Java线程与并发库高级应用-线程范围内共享数据ThreadLocal类
  5. MySQL存储引擎概述
  6. iOS 发送Email
  7. for else
  8. 以Lockbits的方式访问bitmap
  9. 关于Android M RuntimePermission的问题
  10. (3)I2C总线的字节格式,时钟同步和仲裁
  11. #include <strstream>
  12. cocos2d-x2.0 win7第一次创建项目需要调用到的脚本(不断更新维护)//cocos2d-x 教程一
  13. HDU 1661 Assigments 贪心法题解
  14. 201521123084 《Java程序设计》第7周学习总结
  15. 学习git之路--1
  16. Postman + newman + jenkins 的API自动化测试应用
  17. web前端之css快速入门
  18. Mybatis源码正确打开方式
  19. 04-matplotlib-柱形图
  20. 怎么样退出vi/vim编辑器

热门文章

  1. Nginx基础篇(一)
  2. springcloud zuul网关整合swagger2,swagger被拦截问题
  3. Fuxploider-20210104
  4. 使用Libusb和hidapi测试HID设备
  5. Flink Table API & SQL 自定义Redis Sink 代码实现
  6. 小白之Python-基础中的基础03
  7. 牛客算法进阶——树形dp
  8. 若依分离版本+Nginx+docker+jenkins 部署
  9. react的react-devtools 工具
  10. 【Hive 元数据和真实数据-TAB_COL_STATS记录错误问题】