python维护代理池脚本
设计思路:
1.找个免费代理的网站,爬取网站代理ip等信息;
2.验证代理ip是否有用
3.把有用的代理ip信息存到数据库中
import requests
import MySQLdb
from bs4 import BeautifulSoup
headers = {'Host':"map.baidu.com","Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Encoding": "gzip, deflate","Accept-Language": "en-US,en;q=0.5","Connection": "keep-alive","User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36"
}db = MySQLdb.connect("localhost","root",'liao1234','liao')
cursor = db.cursor()sql ="""create table proxies(ip char(20) not null,port char(20),area char(20),nm char(20),type char(20),livetime char(20),ytime char(20))"""
cursor.execute(sql)r = requests.get("http://www.xicidaili.com/",headers=headers)
html =r.text
soup = BeautifulSoup(html)for tag in soup.find('table',id='ip_list').find_all('tr'):ss = []for aa in tag.find_all('td'):if aa.string is None:continueelse:print aa.stringss.append(aa.string)if len(ss) == 0:continueelse:domian = "http://"+str(ss[0])+":"+str(ss[1])proxies = { "http": domian, "https": domian, }try:r1 = requests.get("http://www.webkaka.com/", proxies=proxies,headers=headers,timeout=5)print r1.status_codeif r1.status_code == 200:sql = "insert into proxies(ip,port,area,nm,type,livetime,ytime) values('%s','%s','%s','%s','%s','%s','%s')"%(ss[0].encode('utf-8'),ss[1].encode('utf-8'),ss[2].encode('utf-8'),ss[3].encode('utf-8'),ss[4].encode('utf-8'),ss[5].encode('utf-8'),ss[6].encode('utf-8'))cursor.execute(sql) else:print "code is not 200"except:print "this ip is droped!"
db.close
扫描结果如下:
python维护代理池脚本相关推荐
- python爬虫代理池_python爬虫之ProxyPool(代理ip地址池的构建)
ProxyPool 安装 安装Python 至少Python3.5以上 安装Redis 安装好之后将Redis服务开启 配置代理池 cd proxypool 进入proxypool目录,修改setti ...
- Python获取代理池和提取可用IP
Python获取代理池和提取可用IP 前言 正文 请求代理池 筛选代理ip 保存可用的代理ip 把代理ip转发到本地(可选) 总结 前言 最近在学习Python爬虫的编写,发现很多网站设置了ip限制, ...
- Python搭建代理池爬取拉勾网招聘信息
先来看一张图了解下爬虫 实现功能 多线程爬取拉勾网招聘信息 维护代理 ip 池 搭建 node 服务器 Taro 使用 echarts 做数据分析 1.多线程爬取拉勾网招聘信息 Tip:涉及知识 1. ...
- python ip代理池_python实现ip代理池功能示例
本文实例讲述了python实现ip代理池功能.分享给大家供大家参考,具体如下: 爬取的代理源为西刺代理. 用xpath解析页面 用telnet来验证ip是否可用 把有效的ip写入到本地txt中.当然也 ...
- Python爬虫代理池
爬虫代理IP池 在公司做分布式深网爬虫,搭建了一套稳定的代理池服务,为上千个爬虫提供有效的代理,保证各个爬虫拿到的都是对应网站有效的代理IP,从而保证爬虫快速稳定的运行,当然在公司做的东西不能开源出来 ...
- Python搭建代理池
由于爬虫工作往往有大量数据需要爬取,便需要大量的备用IP更换,这时就需要用到代理IP池.将大量可以用于更换的代理IP汇聚要一起,便于管理和调用,IP池就这样产生了.IP池有一下特征:它里面的IP是持续 ...
- Python爬虫-代理池-爬取代理入库并测试代理可用性
目的:建立自己的代理池.可以添加新的代理网站爬虫,可以测试代理对某一网址的适用性,可以提供获取代理的 API. 整个流程:爬取代理 ----> 将代理存入数据库并设置分数 ----> 从数 ...
- python ip代理池_Python 爬虫IP代理池的实现
很多时候,如果要多线程的爬取网页,或者是单纯的反爬,我们需要通过代理IP来进行访问.下面看看一个基本的实现方法. 代理IP的提取,网上有很多网站都提供这个服务.基本上可靠性和银子是成正比的.国内提供的 ...
- python代理池_进击:用Python搭建高匿代理池
Email: WlRCME0zSjRRR2R0WVdsc0xtTnZiUT09 0x01 写在前面 常听到很多人抱怨自己的IP因爬虫次数太多而被网站屏蔽,不得不频繁使用各种代理IP,却又因为网上的公开 ...
最新文章
- ZOJ-1654 Place the Robots---二分图最小点覆盖+构图
- AndoridSQLite数据库开发基础教程(10)
- C 语言编程 — 高级数据类型 — 指针
- 【JAVA编码专题】UNICODE,GBK,UTF-8区别
- Python 格式化输出 —— %r 与 %s 的区别(__repr__ 与 __str__)
- 联想ThinkPad E420安装7450M的显卡驱动后进入不了系统,试了4个系统都不..
- 如何解锁PDF的打印限制
- 2008服务器打不开iso文件,Windows Server无法挂载ISO文件:以下是修复它的方法
- 花式登录正方教务系统
- Hadoop 调优之Linux操作系统调优篇
- 分析Android 搜狗输入法在微信和QQ中发送图片和表情
- 【文献阅读笔记之】ACFNet: Attentional Class Feature Network for Semantic Segmentation
- WPF Chart DynamicDataDisplay的横坐标显示日期的解决方案
- 视频监控分屏简单例子
- 阿里云日志服务 地区对应的endpoint
- 计算机作文英语初中,初中书面表达的英语作文(精选5篇)
- 【唯美童话森林xp主题】
- 蚂蚁金服软件测试工程师一面面试题(附答案)建议收藏
- openID相关知识
- HoloLens MRTK模型切割算法解析
热门文章
- 历史记录计算机app,计算机管理系统软件历史记录功能
- 前端基础-CSS-引入字体
- shell181网格划分_ANSYS中Shell181单元介绍谁知道
- B站面试官“飘了”,可游戏行业不应只有面包
- 利用python获取B站排名前100视频
- ios蓝牙---(最终我自己测试成功了读和写)
- php mysql 模糊查询_PHP如何实现模糊查询(图文代码)
- java set 空值_Java中如何更优雅的处理空值
- 链表逆序 递归 java_将链表逆序(递归方式)
- linux用命令开触摸板,使用shell脚本实现控制触摸板关闭和开启(Ubuntu Linux、Deepin Linux系列)...