摘要: - 五大核心组件: - 引擎(Engine) 用作于数据流处理 可以触发事务 - 调度器(Scheduler):请求对象去重 并压入队列,并在引擎再次请求的时候返回,可以想象成一个url的优先队列,由他来决定下一个要抓取的网址是什么,同时去除重复的网址 - 过滤器 - 队列 - 下载器(Downlo 阅读全文
posted @ 2024-03-02 18:48 会秃头的小白 阅读(14) 评论(0) 推荐(0) 编辑
摘要: -基于Spider的全站数据爬取 - 就是将一个网站上的所有数据全部爬取下来 - 实现方法: - 将所有页面的url添加到start_urls 列表 (不推荐) - 自行手动进行请求发送(推荐): -手动发送请求: - yield scrapy.Request(url=url,callback=se 阅读全文
posted @ 2024-03-02 13:07 会秃头的小白 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 笔记 如何将爬取到的数据一份存储到本地一份存储到数据库? - 创建一个管道类 - 爬虫文件提交到的item指挥给管道文件中的第一个被执行的管道类接收 - process_item方法中的return item表示将item提交给下一个管道类 在pipelines类中加入MysqlPiplines类 阅读全文
posted @ 2024-03-02 12:40 会秃头的小白 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 笔记 - 基于管道: - 编码流程 -数据解析 - 在item类中定义相关的属性 - 将解析的数据封装到item对象中 - 将item类型的对象提交给管道进行持久化存储 - 在管道类的process_item中要将其接收到的item对象中存储的数据进行持久化存储 - 在配置文件中开启管道 - 好处: 阅读全文
posted @ 2024-03-02 12:07 会秃头的小白 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 笔记 - 基于终端指令: - 要求:只可以将parse方法的返回值存储到本地的文本文件中 scrapy crawl dou -o ./douban.csv - 注意:持久化存储的类型只可以是'json', 'jsonlines', 'jsonl', 'jl', 'csv', 'xml', 'mars 阅读全文
posted @ 2024-03-02 12:04 会秃头的小白 阅读(3) 评论(0) 推荐(0) 编辑
摘要: import scrapy class DouSpider(scrapy.Spider): name = "dou" #allowed_domains = ["www.douban.com"] start_urls = ["https://www.douban.com/doulist/1136522 阅读全文
posted @ 2024-03-02 11:25 会秃头的小白 阅读(3) 评论(0) 推荐(0) 编辑
摘要: scrapy框架 - 什么是框架 - 就是集成了很多功能并且具有很强通用性的一个项目模板 - 如何学习框架 - 专门学习框架封装的各种功能的详细用法 - 什么是scrapy - 爬虫中封装好的一个明星框架。 - 功能:高性能的持久化存储,异步的数据下载,高性能的数据解析,分布式部署 - scrapy 阅读全文
posted @ 2024-03-02 11:25 会秃头的小白 阅读(6) 评论(0) 推荐(0) 编辑