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

yipeiwu_com5年前Python爬虫

实例如下所示:

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爬虫实战:分析《战狼2》豆瓣影评

Python爬虫实战:分析《战狼2》豆瓣影评

刚接触python不久,做一个小项目来练练手。前几天看了《战狼2》,发现它在最新上映的电影里面是排行第一的,如下图所示。准备把豆瓣上对它的影评做一个分析。 目标总览 主要做了三件事:...

python面向对象多线程爬虫爬取搜狐页面的实例代码

python面向对象多线程爬虫爬取搜狐页面的实例代码

首先我们需要几个包:requests, lxml, bs4, pymongo, redis 1. 创建爬虫对象,具有的几个行为:抓取页面,解析页面,抽取页面,储存页面 class S...

Python3实现爬取指定百度贴吧页面并保存页面数据生成本地文档的方法

分享给大家供大家参考,具体如下:Python3实现爬取指定百度贴吧页面并保存页面数据生成本地文档的方法。分享给大家供大家参考,具体如下: 首先我们创建一个python文件, tieba....

Python使用urllib2模块抓取HTML页面资源的实例分享

先把要抓取的网络地址列在单独的list文件中 //www.jb51.net/article/83440.html //www.jb51.net/article/83437.html...

Python之多线程爬虫抓取网页图片的示例代码

Python之多线程爬虫抓取网页图片的示例代码

目标 嗯,我们知道搜索或浏览网站时会有很多精美、漂亮的图片。 我们下载的时候,得鼠标一个个下载,而且还翻页。 那么,有没有一种方法,可以使用非人工方式自动识别并下载图片。美美哒。 那么请...