爬虫
yepoyou
一个小透明
展开
-
【爬虫】分布式爬虫
分布式爬虫分布式的实现实现流程 概念:需要搭建分布式机群,让其对一组资源进行分布联合爬取 分布式的实现 安装scrapy-redis组件 原生的scrapy是不可以实现分布式爬虫的,必须让scrapy结合scrapy-redis组件一起实现分布式爬虫 为什么原生的scrapy不能实现分布式?【调度器、管道不可以被分布式机群共享】 scrapy-redis作用:给scrapy框架提供可被共享的调度器、管道 实现流程 创建一个工程 创建一个CrawlSpider的爬虫文件 修改原始代码 导入原创 2020-08-20 16:15:39 · 272 阅读 · 0 评论 -
【爬虫】CrawlSpider
CrawlSpider概念全站数据爬取的方式CrawlSpider的使用链接提取器规则解析器 概念 Spider的子类 实现了全站数据爬取,即所有页码 全站数据爬取的方式 基于Spider:通用url模板,手动发送请求 基于CrawlSpider CrawlSpider的使用 创建一个工程 cd XXX 创建爬虫文件(以CrawlSpider为父类)scrapy genspider -t crawl XXX www.xxxx.com 链接提取器 根据指定规则(allow=正则表达式)进行指定链接的提取原创 2020-08-20 14:42:23 · 144 阅读 · 0 评论 -
【爬虫】中间件
如图所示,下载中间件可以批量拦截整个工程中所有的请求和响应。 拦截请求: UA伪装。在配置文件中设置的是基于全局的,所有请求均为同一个UA。若想尽可能多的使用不同UA给各个不同的请求,则只能使用下载中间件。 代理IP。请求可能会被服务器禁掉。 拦截响应: 篡改响应数据,响应对象。 ...原创 2020-08-19 22:47:26 · 817 阅读 · 0 评论 -
【爬虫】scrapy图片爬取imagesPipeline
scrapy图片爬取爬取字符串和爬取图片的区别ImagesPipeline使用流程 爬取字符串和爬取图片的区别 字符串:基于xpath进行解析提价管道进行持久化存储 图片:xpath解析出图片src属性,对图片地址发起请求获取图片二进制类型数据 ImagesPipeline 将img的src属性进行解析,提交到管道,管道会对src进行请求发送获取图片的二进制类型的数据且进行持久化存储 使用流程 数据解析。解析出图片地址。 将存储图片地址的item提交到imagespipeline管道类 在管道文件中自原创 2020-08-18 10:22:40 · 972 阅读 · 0 评论 -
【爬虫】请求传参
使用场景 爬取解析的数据不在用一个页面中,深度爬取 需求 爬取招聘网站某类的岗位名称、岗位描述 import scrapy from spider.bossPro.bossPro.items import BossproItem class BossSpider(scrapy.Spider): name = 'boss' # allowed_domains = ['www.xxx.com'] start_urls = ['https://www.zhipin.com/c101020原创 2020-08-17 19:54:04 · 310 阅读 · 0 评论 -
【爬虫】scrapy五大组件
原创 2020-08-17 17:41:23 · 168 阅读 · 0 评论 -
【爬虫】全站数据爬取,即所有页
将网站中某板块下的全部页码对应的页面数据进行爬取 需求:抓取校花网中的照片名称 实现方式: 将所有页面的url添加到start_urls列表(不推荐) 手动请求发送(推荐) 爬虫文件 import scrapy from spider.xiaohuaPro.xiaohuaPro.items import XiaohuaproItem class XiaohuaSpider(scrapy.Spider): name = 'xiaohua' # allowed_.原创 2020-08-17 17:07:52 · 1486 阅读 · 1 评论 -
【爬虫】面试题:爬取的数据一份存到本地,一份存到数据库,如何实现?
持久化存储新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基原创 2020-08-17 13:01:22 · 664 阅读 · 1 评论 -
【爬虫】scrapy持久化存储
目录 基于终端指令 基于管道 编码流程 基于终端指令 要求:只可以将parse方法的返回值存储到本地文本文件中 注意:存储类型有限制,见终端截图1 指令:scrapy crawl 爬虫名 -o 路径 优点:简洁高效便捷 缺点:局限性较强,后缀有限 import scrapy class QiubaiSpider(scrapy.Spider): name = 'qiubai' # allowed_domains = ['www.xxx.com'] start_u原创 2020-08-16 22:05:29 · 348 阅读 · 0 评论 -
【爬虫】scrapy数据解析
爬取如下: 步骤: 爬虫代码: import scrapy class QiubaiSpider(scrapy.Spider): name = 'qiubai' # allowed_domains = ['www.xxx.com'] start_urls = ['https://www.qiushibaike.com/text/'] def parse(self, response): # 解析作者名称、段子内容 d...原创 2020-08-16 19:54:25 · 445 阅读 · 1 评论 -
【爬虫】scrapy基本使用
import scrapy class ExampleSpider(scrapy.Spider): # 爬虫文件名称:爬虫文件的唯一标识 name = 'example' # 允许的域名:限定start_urls中哪些可以进行自动请求发送 # allowed_domains = ['www.baidu.com'] # 往往不用这一条限制 # 起始的url列表:该列表中的url会被scrapy自动请求发送 start_urls = ['http://ww.原创 2020-08-16 16:55:43 · 112 阅读 · 0 评论 -
【爬虫】scrapy框架
目录 什么是框架 如何学习框架 什么是scrapy scrapy的基本使用 环境安装 基本使用 什么是框架 集成了很多功能,具有很强的通用性的项目模板 如何学习框架 学习框架封装的功能的详细用法 深层,底层封装源码了解 什么是scrapy 爬虫中封装好的明星框架。 高性能的持久化存储、异步的数据下载、高性能的数据解析、分布式 scrapy的基本使用 环境安装 Mac/Linux : pip install scrapy Windows: pycha...原创 2020-08-16 16:35:11 · 252 阅读 · 0 评论