代理池篇(一)获取66免费代理网+西刺代理
66免费代理网
西刺免费代理
66免费代理分析:
曾经尝试过网站提供的提取,用正则爬下来后当时正常,过两天数量异常
于是,采用正规手段,分页抓取,抓取1300页,对每页进行分析
为此,构造正则表达式即可
#代理66
import requests,re
from redis import Redis
redis = Redis(db=7)def craw_66ip():url = 'http://www.66ip.cn/{}.html'for i in range(1,1300):r = requests.get(url.format(i)).textips = re.findall('td>(\w+\.\w+\.\w+\.\w+)</td',r,re.S)ports = re.findall('\.\w+</td.*?>(\w+)</td',r,re.S)for i in range(len(ips)):str = ips[i]+":"+ports[i]redis.rpush('nowashhttp',str)print('加入')craw_66ip()
此处,对IP和端口进行正则匹配,不难,获取到IP和端口列表后,对两者进行合并,得到N个“IP:端口”格式的字符串,并将该字符串存入Redis数据库中,以备清洗程序使用
西刺免费代理分析
西刺分四个类目,国内普通,国内高匿,国内HTTP,国内HTTPS
经过分析,可知爬取方式一样,用同一个函数即可,只是网址不同而已
from bs4 import BeautifulSoup
import requests,time
from redis import Redis
redis = Redis(db=7)def craw_xici():ip_list = [] # 存储爬下来的IP地址和端口url = 'http://www.xicidaili.com/wt/'url1 = 'http://www.xicidaili.com/wn/'url2 = 'http://www.xicidaili.com/nn/'url3 = 'http://www.xicidaili.com/nt/'headers = { # 创建字典,存储自己浏览器上的信息,从而模拟浏览'Cookie': '_free_proxy_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEki''JWIzYzA0ZWNhN2U4YmJiZmI3N2M1YzQ0ZmFjZDU1OGFhBjsAVEkiE''F9jc3JmX3Rva2VuBjsARkkiMXhOSktRWmRoaGlLRXd0UnU1NmtDWT''FvVzh6SVFZUWxTWnlLeGVIVVVpNEU9BjsARg%3D%3D--f0f7b59b27''a7bbb3e87c4eb1f5043c9c5f5ef435; __guid=264997385.176939''6082676313900.1532227595275.8433; Hm_lvt_0cf76c77469e965''d2957f0553e6ecf59=1532227595; monitor_count=5; Hm_lpvt_0''cf76c77469e965d2957f0553e6ecf59=1532227642','User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKi''t/537.36 (KHTML, like Gecko) Chrome/49.0.2623.22''1 Safari/537.36 SE 2.X MetaSr 1.0'}#得到一页的IP,并存储至ip_listdef get_one_page(url):response = requests.get(url, headers=headers)soup = BeautifulSoup(response.text, 'lxml')ips = soup.select('table tr')ips.remove(ips[0])for i in ips:for j, k in enumerate(i):if j == 3:port = k.find_next_sibling().get_text()ip = k.get_text()ip_list.append(ip + ':' + port)# 得到20页的IPdef get_all_pages(url):for i in range(1, 20):url_ = url + str(i)get_one_page(url_)#得到四个类目每个类目前20页代理get_all_pages(url)get_all_pages(url1)get_all_pages(url2)get_all_pages(url3)print(len(ip_list))print(ip_list)for i in ip_list:redis.rpush('nowashhttp', i)craw_xici()
爬取西刺需要加headers,很多网站还是BeautifulSoup比较合适,这是我八月初写的代码精简的,还能用
同样将数据存储至Redis数据库中,个人觉得将IP都存到一个列表里最好,用着Redis的高请求和写入速度,紧着一个键值对就写啊,哈哈,全部写入,然后由清洗程序检验,检验合格者存入另一个集合中,去重
代理池篇(一)获取66免费代理网+西刺代理相关推荐
- Python 抓取 快代理、西刺代理 、西拉代理等等 构建免费代理池
import reimport requests from lxml import etreeheaders = {"User-Agent": "Mozilla/5.0 ...
- 爬虫学习3.2 抓取西刺代理,并构建自己的代理池
任务描述 学习什么是IP,为什么会出现IP被封,如何应对IP被封的问题. 抓取西刺代理,并构建自己的代理池. 西刺直通点:https://www.xicidaili.com/ . 参考资料:https ...
- 实战项目一:爬取西刺代理(获取代理IP)
爬虫的学习就是与反扒措施.反扒系统做斗争的一个过程,而使用代理IP是我们重要的防反扒的重要措施,代理IP的来源有两种一是你花钱去购买商家会给你提供一个接口你直接调用就可以了,二是自己在网上爬取高效IP ...
- 应对IP被封--抓取西刺代理,并构建自己的代理池
一.IP简介: 互联网协议地址(英语:Internet Protocol Address,又译为网际协议地址),缩写为IP地址(英语:IP Address),是分配给网络上使用网际协议(英语:Inte ...
- 抓取西刺代理,并构建自己的代理池
1.IP地址: 互联网协议地址(Internet Protocol Address,又译为网际协议地址),缩写为IP地址(IP Address),是分配给用户上网使用的网际协议(IP)的设备的数字标签 ...
- python之利用requests库爬取西刺代理,并检验IP的活性
用爬虫爬取某个网站的数据时,如果用一个IP频繁的向该网站请求大量数据,那么你的ip就可能会被该网站拉入黑名单,导致你不能访问该网站,这个时候就需要用到IP动态代理,即让爬虫爬取一定数据后更换IP来继续 ...
- 代理IP爬取和验证(快代理西刺代理)
前言 仅仅伪装网页agent是不够的,你还需要一点新东西 今天主要讲解两个比较知名的国内免费IP代理网站:西刺代理&快代理,我们主要的目标是爬取其免费的高匿代理,这些IP有两大特点:免费,不稳 ...
- Python 多线程爬取西刺代理
西刺代理是一个国内IP代理,由于代理倒闭了,所以我就把原来的代码放出来供大家学习吧. 镜像地址:https://www.blib.cn/url/xcdl.html 首先找到所有的tr标签,与class ...
- Python爬虫:爬取西刺代理数据,讲解处理反爬措施(上篇)
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 本文章来自腾讯云 作者:Python进阶者 想要学习Python?有问题得不到第一 ...
- 西刺代理有效高匿代理爬取demo
1. 爬取西刺代理网站的国内高匿代理的IP地址和端口 2. 使用随机用户代理生成器 高匿代理:服务器只能发现代理的地址,但是发现不了你真实的IP地址 起始网页:https://www.xicidail ...
最新文章
- 将文本随意插入网页表单的 textarea
- LeetCode实战:搜索旋转排序数组
- Domino+Qucikplace+Sametime构建企业办公平台图文攻略(三)
- php 内核开发_深入理解PHP7内核之Reference
- nginx日志中文变成类型\xE9\xA6\x96\xE9\xA1\xB5-\xE6\x8E\xA8\xE8\x8D\x90的东西
- python实现lenet_吴裕雄 python 神经网络TensorFlow实现LeNet模型处理手写数字识别MNIST数据集...
- python多线程之线程锁(Lock)和递归锁(RLock)实例
- 12款最佳的 WordPress 语法高亮插件推荐
- miniui中的相关问题
- 使用 Java8 也能写出优雅的 Spark 应用
- 解决Ubuntu 14.04下CodeBlocks缩进异常问题
- CSDN博客代码块语法高亮
- 通过串口波特率计算数据传输速率(每秒字节数)
- hadoop工作原理
- GB28181 视频服务器文档整理
- Android安卓身份证识别SDK
- 科研日志--python大文件打开内存溢出
- 冰羚Planned features.md翻译
- 听说高盛集体抗议 996 ,我们已经连 955 都不要了
- perl 获取匹配正则表达式字串
热门文章
- 常见的80道面试算法题
- 新国货全面崛起,背后的密码是什么?
- vb.net读取写入EXCEl的终极方法-NOPI。
- 谷粒商城-个人笔记(基础篇一)
- Python:Excel转TXT的简单办法
- 时序预测 | MATLAB实现DBN深度置信网络时间序列预测
- 计算机中缺失freeimage.dll,修复freeimage.dll
- 题解 luogu P6002 【[USACO20JAN]Berry Picking S】
- matlab 生成自回归,Matlab时间序列-AR-自回归.pdf
- android 屏幕坐标系,android 屏幕坐标总结