python 爬虫 批量获取代理ip的实例代码


Posted in Python onMay 22, 2018

实例如下所示:

import urllib.request
import os, re,sys,time
try:
 from StringIO import StringIO
except ImportError:
 from io import StringIO
loca = re.compile(r"""ion":"\D+", "ti""")
#伪装成浏览器
header = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36'}
class Getip():
 def __init__(self,diqu):
  self.ur ={"xicidaili国内普通代理 --1线":"http://www.xicidaili.com/nt/",
        
    "ip84国内普通代理 --2线":'http://www.ip84.com/dlpn-http/',
        
    'xicidaili国内高匿名代理 --1线':'http://www.xicidaili.com/nn/',
       
    'ip84国内高匿名代理 --2线':'http://www.ip84.com/dlgn-http/',
    
    'xicidaili国外高匿名代理 --1线':'http://www.xicidaili.com/wn/',
    
    'ip84国外高匿名代理 --2线':'http://www.ip84.com/gwgn-http/',
    'xicidaili国外普通代理 --1线':'http://www.xicidaili.com/wt/',
    'haodailiip国内混合代理 --3线':'http://www.haodailiip.com/guonei/',
    'haodailiip国外混合代理 --3线':'http://www.haodailiip.com/guoji/',
        }
  self.diqu = diqu
 
 def urlopen(self,url):
  global header
  try:
   req = urllib.request.Request(url, None, header)
   res=urllib.request.urlopen(req)
  
   return res
  except:
   pass
 def getip(self,ren):
  '''url = "http://proxy.ipcn.org/proxylist.html"#代理IP页面
  ip_proxy_re = re.compile(r"""\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,}""")# 直接匹配 xxx.xxx.xxx.xxx:xxxx'''
  
  url = self.ur[self.diqu]+str(ren)
  
  ip_proxy_re = re.compile(r'(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s*</td>\s*<td>\s*(\d{1,})\s*</td>\s*<[^\u4E00-\u9FA5]+>([\u4E00-\u9FA5]*\s*[\u4E00-\u9FA5]*\s*[\u4E00-\u9FA5]*)\s*<')
  #################################通用正则匹配的  格式 是  (IP,端口,地区) 地区有可能包含换行和空格
  try:
   data = self.urlopen(url).read().decode('utf-8')
  except:
   return None
  
  self.rel = []
  
  ip = ip_proxy_re.findall(data)
  ##########返回的IP 就是 正则匹配的结果(IP,端口,地区) 地区有可能包含换行和空格
  
  return ip
  
if __name__ == '__main__':
 g=Getip("xicidaili国内普通代理 --1线")
 import pprint
 for x in range(4):
  ips = g.getip(1)
  print('获取到ip地址一共:',len(ips))
  pprint.pprint(ips)

以上这篇python 爬虫 批量获取代理ip的实例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python生成指定尺寸缩略图的示例
May 07 Python
python获取本机外网ip的方法
Apr 15 Python
使用Python解析JSON数据的基本方法
Oct 15 Python
Python简单格式化时间的方法【strftime函数】
Sep 18 Python
python Flask 装饰器顺序问题解决
Aug 08 Python
python 实现绘制整齐的表格
Nov 18 Python
python 比较2张图片的相似度的方法示例
Dec 18 Python
pytorch 利用lstm做mnist手写数字识别分类的实例
Jan 10 Python
如何使用Python调整图像大小
Sep 26 Python
Python类绑定方法及非绑定方法实例解析
Oct 09 Python
Python3+Flask安装使用教程详解
Feb 16 Python
基于注解实现 SpringBoot 接口防刷的方法
Mar 02 Python
python 获取当天每个准点时间戳的实例
May 22 #Python
selenium+python 去除启动的黑色cmd窗口方法
May 22 #Python
python3实现163邮箱SMTP发送邮件
May 22 #Python
django请求返回不同的类型图片json,xml,html的实例
May 22 #Python
Django使用HttpResponse返回图片并显示的方法
May 22 #Python
python实现最长公共子序列
May 22 #Python
使用python存储网页上的图片实例
May 22 #Python
You might like
计算php页面运行时间的函数介绍
2013/07/01 PHP
json的键名为数字时的调用方式(示例代码)
2013/11/15 PHP
php实现保存周期为1天的购物车类
2017/07/07 PHP
javascript 二分法(数组array)
2010/04/24 Javascript
使用JavaScript制作一个简单的计数器的方法
2015/07/07 Javascript
javascript获取wx.config内部字段解决微信分享
2016/03/09 Javascript
浅谈JavaScript中小数和大整数的精度丢失
2016/05/31 Javascript
浅谈JS运算符&amp;&amp;和|| 及其优先级
2016/08/10 Javascript
Boostrap基础教程之JavaScript插件篇
2016/09/08 Javascript
angular-ui-sortable实现可拖拽排序列表
2016/12/28 Javascript
学好js,这些js函数概念一定要知道【推荐】
2017/01/19 Javascript
JS常用倒计时代码实例总结
2017/02/07 Javascript
js移动端事件基础及常用事件库详解
2017/08/15 Javascript
Vue.js在数组中插入重复数据的实现代码
2017/11/17 Javascript
vue2.0与bootstrap3实现列表分页效果
2017/11/28 Javascript
Angular2中监听数据更新的方法
2018/08/31 Javascript
vue、react等单页面项目部署到服务器的方法及vue和react的区别
2018/09/29 Javascript
微信小程序MUI侧滑导航菜单示例(Popup弹出式,左侧不动,右侧滑动)
2019/01/23 Javascript
Jquery动态列功能完整实例
2019/08/30 jQuery
微信小程序如何加载数据库真实数据的实现
2020/03/04 Javascript
javascript实现前端成语点击验证
2020/06/24 Javascript
在python3.5中使用OpenCV的实例讲解
2018/04/02 Python
Python3中urlencode和urldecode的用法详解
2019/07/23 Python
python2 中 unicode 和 str 之间的转换及与python3 str 的区别
2019/07/25 Python
TensorFlow命名空间和TensorBoard图节点实例
2020/01/23 Python
Python多线程的退出控制实现
2020/08/10 Python
Python 实现3种回归模型(Linear Regression,Lasso,Ridge)的示例
2020/10/15 Python
用css3写出气球样式的示例代码
2017/09/11 HTML / CSS
socket.io 和canvas 实现的共享画板功能
2019/05/22 HTML / CSS
澳大利亚领先的在线葡萄酒零售商:Get Wines Direct
2018/03/27 全球购物
个人四风问题对照检查材料思想汇报
2014/10/06 职场文书
2014年环境整治工作总结
2014/12/10 职场文书
技术支持岗位职责
2015/02/13 职场文书
关于上班时间调整的通知
2015/04/23 职场文书
2016年小学“我们的节日·中秋节”活动总结
2016/04/05 职场文书
html2 canvas svg不能识别的解决方案
2021/06/03 HTML / CSS