潭州课堂25班:Ph201805201 爬虫高级 第十三 课 代理池爬虫检测部分 (课堂笔记)

时间:2023-03-09 04:53:06
潭州课堂25班:Ph201805201 爬虫高级 第十三 课 代理池爬虫检测部分 (课堂笔记)
1,通过爬虫获取代理 ip ,要从多个网站获取,每个网站的前几页
2,获取到代理后,开进程,一个继续解析,一个检测代理是否有用 ,引入队列数据共享
3,Queue 中存放的是所有的代理,我们要分离出可用的代理,所以再搞个队列,存放可用代理,
4,检测速度过慢,效率低,引入 gevent,猴子补丁 一次多个检测 5,将分离出的有用代理存入 mongodb
另开个进程操作 6, flask web 框架 , API接口,
7,调度,每次开启时先对数据库中的代理进行检测,

潭州课堂25班:Ph201805201 爬虫高级 第十三 课 代理池爬虫检测部分 (课堂笔记)

因为maogo db无法远程连接,所以改成了用 json 存数据到本地的方法,一样可以实现代理

configure 是配置文件,把免费代理的网址放入 parser_list 中,
可以放入多个免费代理的网址, url 由 for 循环生成,实现翻页的功能,

潭州课堂25班:Ph201805201 爬虫高级 第十三 课 代理池爬虫检测部分 (课堂笔记)

Parser 解析方法,由 configure 传过来的 type 判断是用 xpath 还是用 re 解析,

潭州课堂25班:Ph201805201 爬虫高级 第十三 课 代理池爬虫检测部分 (课堂笔记)

潭州课堂25班:Ph201805201 爬虫高级 第十三 课 代理池爬虫检测部分 (课堂笔记)

Server 在 flask 的基础上实现 API 接口,
spider_ 为运行的主程序,实现 ip ,端口的爬取,检测,存储,再检测再存储...