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

因为maogo db无法远程连接,所以改成了用 json 存数据到本地的方法,一样可以实现代理
configure 是配置文件,把免费代理的网址放入 parser_list 中,
可以放入多个免费代理的网址, url 由 for 循环生成,实现翻页的功能,

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


Server 在 flask 的基础上实现 API 接口,
spider_ 为运行的主程序,实现 ip ,端口的爬取,检测,存储,再检测再存储...
潭州课堂25班:Ph201805201 爬虫高级 第十三 课 代理池爬虫检测部分 (课堂笔记)的更多相关文章
- 潭州课堂25班:Ph201805201 爬虫高级 第七课 sclapy 框架 爬前程网 (课堂笔)
		
定时对该网页数据采集,所以每次只爬第一个页面就可以, 创建工程 scrapy startproject qianchen 创建运行文件 cd qianchenscrapy genspider qian ...
 - 潭州学院-JavaVIP的Javascript的高级进阶-KeKe老师
		
潭州学院-JavaVIP的Javascript的高级进阶-KeKe老师 讲的不错,可以学习 下面是教程的目录截图: 下载地址:http://www.fu83.cn/thread-283-1-1.htm ...
 - 潭州课堂25班:Ph201805201  爬虫基础   第一课  (课堂笔记)
		
爬虫的概念: 其实呢,爬虫更官方点的名字叫数据采集,英文一般称作spider,就是通过编程来全自动的从互联网上采集数据.比如说搜索引擎就是一种爬虫.爬虫需要做的就是模拟正常的网络请求,比如你在网站上点 ...
 - 潭州课堂25班:Ph201805201 爬虫基础 第三课 urllib (课堂笔记)
		
Python网络请求urllib和urllib3详解 urllib是Python中请求url连接的官方标准库,在Python2中主要为urllib和urllib2,在Python3中整合成了url ...
 - 潭州课堂25班:Ph201805201 WEB 之 页面编写 第四课 登录注册 (课堂笔记)
		
index.html 首页 <!DOCTYPE html> <html lang="en"> <head> <meta charset=& ...
 - 潭州课堂25班:Ph201805201 WEB 之 页面编写 第三课 (课堂笔记)
		
index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...
 - 潭州课堂25班:Ph201805201 WEB 之 页面编写 第二课 (课堂笔记)
		
index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...
 - 潭州课堂25班:Ph201805201 WEB 之 页面编写 第一课 (课堂笔记)
		
index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...
 - 潭州课堂25班:Ph201805201 第十课  类的定义,属性和方法   (课堂笔记)
		
类的定义 共同属性,特征,方法者,可分为一类,并以名命之 class Abc: # class 定义类, 后面接类名 ( 规则 首字母大写 ) cls_name = '这个类的名字是Abc' # 在类 ...
 
随机推荐
- js 图片转换base64  base64转换为file对象
			
function getImgToBase64(url,callback){//将图片转换为Base64 var canvas = document.createElement('canvas'), ...
 - 俺也会刷机啦--windows7下刷android
			
刷机很多人都会,本文只为像我这种入门的朋友而写的. 风险提示: 1. SD卡数据极可能会丢失(我这次就全丢了). 2. 升级失败. (俺的)环境说明: windows7 专业版64位 cmd命令行工具 ...
 - Django中模板使用
			
第一步:配置 1.在工程中创建模板目录templates. 2.在settings.py配置文件中修改TEMPLATES配置项的DIRS值:TEMPLATES = [ { 'BACKEND': 'dj ...
 - Python列表去重复元素
			
比较容易记忆的是用内置的set l1 = ['b','c','d','b','c','a','a'] l2 = list(set(l1)) print l2 还有一种据说速度更快的,没测试过两者的速度 ...
 - Mac Mojave(10.14.1)执行Matlab的mex报错
			
先装了matlab2018b,发现很频繁的crash,同时考虑到要跑的代码在>=2017a时就计算错误,于是转战matlab2016b matlab2016b安装后,执行mex -setup报错 ...
 - python pop方法
			
在两个地方见到了pop方法的使用,看起来是之前自己确实故略寡闻了. 在pandas的DataFrame中 import pandas as pd dataframe = pd.read_csv('ir ...
 - Windows10右键添加“在此处打开命令窗口”
			
cmdHere.reg: Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Directory\shell\OpenCmdHere] @= ...
 - 【转】android:paddingLeft与android:layout_marginLeft的区别
			
http://www.blogjava.net/anchor110/articles/342206.html 当按钮分别设置以上两个属性时,得到的效果是不一样的. android:paddingLef ...
 - centos环境gcc版本升级
			
今天项目需要做node.js项目的性能测试,通过在centos上搭建nodejs环境 安装过程中提示:
 - scrapy 基础使用以及错误方案
			
原先用的是selenium(后面有时间再写),这是第一次使用scrapy这个爬虫框架,所以记录一下这个心路历程,制作简单的爬虫其实不难,你需要的一般数据都可以爬取到. 下面是我的目录,除了main.p ...