设计思路:

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维护代理池脚本相关推荐

  1. python爬虫代理池_python爬虫之ProxyPool(代理ip地址池的构建)

    ProxyPool 安装 安装Python 至少Python3.5以上 安装Redis 安装好之后将Redis服务开启 配置代理池 cd proxypool 进入proxypool目录,修改setti ...

  2. Python获取代理池和提取可用IP

    Python获取代理池和提取可用IP 前言 正文 请求代理池 筛选代理ip 保存可用的代理ip 把代理ip转发到本地(可选) 总结 前言 最近在学习Python爬虫的编写,发现很多网站设置了ip限制, ...

  3. Python搭建代理池爬取拉勾网招聘信息

    先来看一张图了解下爬虫 实现功能 多线程爬取拉勾网招聘信息 维护代理 ip 池 搭建 node 服务器 Taro 使用 echarts 做数据分析 1.多线程爬取拉勾网招聘信息 Tip:涉及知识 1. ...

  4. python ip代理池_python实现ip代理池功能示例

    本文实例讲述了python实现ip代理池功能.分享给大家供大家参考,具体如下: 爬取的代理源为西刺代理. 用xpath解析页面 用telnet来验证ip是否可用 把有效的ip写入到本地txt中.当然也 ...

  5. Python爬虫代理池

    爬虫代理IP池 在公司做分布式深网爬虫,搭建了一套稳定的代理池服务,为上千个爬虫提供有效的代理,保证各个爬虫拿到的都是对应网站有效的代理IP,从而保证爬虫快速稳定的运行,当然在公司做的东西不能开源出来 ...

  6. Python搭建代理池

    由于爬虫工作往往有大量数据需要爬取,便需要大量的备用IP更换,这时就需要用到代理IP池.将大量可以用于更换的代理IP汇聚要一起,便于管理和调用,IP池就这样产生了.IP池有一下特征:它里面的IP是持续 ...

  7. Python爬虫-代理池-爬取代理入库并测试代理可用性

    目的:建立自己的代理池.可以添加新的代理网站爬虫,可以测试代理对某一网址的适用性,可以提供获取代理的 API. 整个流程:爬取代理 ----> 将代理存入数据库并设置分数 ----> 从数 ...

  8. python ip代理池_Python 爬虫IP代理池的实现

    很多时候,如果要多线程的爬取网页,或者是单纯的反爬,我们需要通过代理IP来进行访问.下面看看一个基本的实现方法. 代理IP的提取,网上有很多网站都提供这个服务.基本上可靠性和银子是成正比的.国内提供的 ...

  9. python代理池_进击:用Python搭建高匿代理池

    Email: WlRCME0zSjRRR2R0WVdsc0xtTnZiUT09 0x01 写在前面 常听到很多人抱怨自己的IP因爬虫次数太多而被网站屏蔽,不得不频繁使用各种代理IP,却又因为网上的公开 ...

最新文章

  1. ZOJ-1654 Place the Robots---二分图最小点覆盖+构图
  2. AndoridSQLite数据库开发基础教程(10)
  3. C 语言编程 — 高级数据类型 — 指针
  4. 【JAVA编码专题】UNICODE,GBK,UTF-8区别
  5. Python 格式化输出 —— %r 与 %s 的区别(__repr__ 与 __str__)
  6. 联想ThinkPad E420安装7450M的显卡驱动后进入不了系统,试了4个系统都不..
  7. 如何解锁PDF的打印限制
  8. 2008服务器打不开iso文件,Windows Server无法挂载ISO文件:以下是修复它的方法
  9. 花式登录正方教务系统
  10. Hadoop 调优之Linux操作系统调优篇
  11. 分析Android 搜狗输入法在微信和QQ中发送图片和表情
  12. 【文献阅读笔记之】ACFNet: Attentional Class Feature Network for Semantic Segmentation
  13. WPF Chart DynamicDataDisplay的横坐标显示日期的解决方案
  14. 视频监控分屏简单例子
  15. 阿里云日志服务 地区对应的endpoint
  16. 计算机作文英语初中,初中书面表达的英语作文(精选5篇)
  17. 【唯美童话森林xp主题】
  18. 蚂蚁金服软件测试工程师一面面试题(附答案)建议收藏
  19. openID相关知识
  20. HoloLens MRTK模型切割算法解析

热门文章

  1. 历史记录计算机app,计算机管理系统软件历史记录功能
  2. 前端基础-CSS-引入字体
  3. shell181网格划分_ANSYS中Shell181单元介绍谁知道
  4. B站面试官“飘了”,可游戏行业不应只有面包
  5. 利用python获取B站排名前100视频
  6. ios蓝牙---(最终我自己测试成功了读和写)
  7. php mysql 模糊查询_PHP如何实现模糊查询(图文代码)
  8. java set 空值_Java中如何更优雅的处理空值
  9. 链表逆序 递归 java_将链表逆序(递归方式)
  10. linux用命令开触摸板,使用shell脚本实现控制触摸板关闭和开启(Ubuntu Linux、Deepin Linux系列)...