摘要: 自从之前看的一篇讲Scrapy下载中间件的文章后,一直认为设置里下载中间件的优先级数值越小,越优先,最近要抓的网站反爬增强了,所以需要使用代理ip,但是由于使用的是免费代理以至于经常失效,需要对失效的代理进行删除并设置新的代理重新发出请求,但是我编写的中间件怎么也不会被执行,由此天降大坑,废话说了这 阅读全文
posted @ 2019-10-10 11:47 西瓜你个兔子 阅读(1128) 评论(0) 推荐(0) 编辑
摘要:    由于才开始写博客,之前都是写笔记自己看,所以可能会存在表述不清,过于啰嗦等各种各样的问题,有什么疑问或者批评欢迎在评论区留言。 如果你初次接触协程,请先阅读上一篇文章 "初识asyncio协程" 对asyncio有个初步的认识。 一、任务对象(task任务) 参照上一篇 " 阅读全文
posted @ 2019-09-25 15:19 西瓜你个兔子 阅读(494) 评论(0) 推荐(0) 编辑
摘要: 可迭代对象 可迭代对象类型:list,dict,tuple,str,set,deque等 如何判断一个对象是否是可迭代对象,可以通过 方法看它里面有没有 方法,如果有这个方法就是可迭代对象。 迭代器对象 上述的可迭代对象类型都不是迭代器,那什么是迭代器? 迭代器对象相对可迭代对象无非就是多了个 方法 阅读全文
posted @ 2019-09-20 14:57 西瓜你个兔子 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 初识asyncio协程 一、基本概念 ​ 要想了解学习协程相关知识要先对以下几个概念先行了解: 阻塞 ​ 阻塞状态是指程序未得到某所需计算资源时的挂起状态,简单说就是程序在等待某个操作未执行完前无法执行其他操作。 非阻塞 ​ 非阻塞状态是指在等待某项操作执行完前可以继续运行其他操作,也就是不会被阻塞 阅读全文
posted @ 2019-09-20 11:35 西瓜你个兔子 阅读(658) 评论(0) 推荐(0) 编辑
摘要: 一、操作系统中相关进程的知识   Unix/Linux操作系统提供了一个fork()系统调用,它非常特殊。普通的函数调用,调用一次,返回一次,但是fork()调用一次,返回两次,因为操作系统自动把当前进程(称为父进程)复制了一份(称为子进程),然后,分别在父进程和子进程内返回。\ 阅读全文
posted @ 2019-09-19 19:27 西瓜你个兔子 阅读(1049) 评论(0) 推荐(0) 编辑
摘要: 一、Request 发送一个请求,参数如下: url :request对象发送请求的url callback :在下载器下载完相应的数据后执行的回调函数 method :请求方法,默认为get headers :请求头,固定的— settings文件中,非固定的在请求时加上即可 meta :比较常用 阅读全文
posted @ 2019-09-17 16:24 西瓜你个兔子 阅读(286) 评论(0) 推荐(0) 编辑
摘要: 一、设置随机请求头 二、设置随机代理ip(开放代理) 三、设置独享代理 阅读全文
posted @ 2019-09-17 16:19 西瓜你个兔子 阅读(330) 评论(0) 推荐(0) 编辑
摘要: 配置下载图片的流程如下 在items中定义两个属性,image_urls 和images 。image_urls是用来存储需要下载的图片url链接,列表类型; 当文件下载完成后会把相关下载信息存入images属性中,如下载的url和图片校验码等; 在配置文件settings中配置IMAGES_STO 阅读全文
posted @ 2019-09-17 16:11 西瓜你个兔子 阅读(667) 评论(0) 推荐(0) 编辑
摘要: Scrapy的CloseSpider扩展会在满足条件时自动终止爬虫程序。可以设置CLOSESPIDER_TIMEOUT(秒)、CLOSESPIDER_ITEMCOUNT、CLOSESPIDER_PAGECOUNT、CLOSESPIDER_ERRORCOUNT分别代表在指定时间过后、在抓取了指定数目的 阅读全文
posted @ 2019-09-17 15:38 西瓜你个兔子 阅读(602) 评论(0) 推荐(0) 编辑
摘要: 1、创建一个CrawlerSpider 2、Rule规则 3、LinkExtractor提取器 示例(抓取微信小程序社区) 阅读全文
posted @ 2019-09-17 15:33 西瓜你个兔子 阅读(703) 评论(0) 推荐(0) 编辑