# -*- coding:utf-8 -*-
import urllib2
import re
import time
class PROXY:
def __init__(self):
# 国内普通
# self.url = 'http://proxy.mimvp.com/free.php?proxy=in_tp'
# 国内高匿
self.url = 'http://proxy.mimvp.com/free.php?proxy=in_hp'
# 国外普通
# self.url = 'http://proxy.mimvp.com/free.php?proxy=out_tp'
# 国外高匿
# self.url = 'http://proxy.mimvp.com/free.php?proxy=out_hp'
self.fileName = './proxy.txt'
def getProxy(self):
# 走代理
enable_proxy = False
proxy_handler = urllib2.ProxyHandler({'http':'http://222.131.153.18:8888'})
null_proxy_handler = urllib2.ProxyHandler({})
if enable_proxy:
opener = urllib2.build_opener(proxy_handler)
else:
opener = urllib2.build_opener(null_proxy_handler)
urllib2.install_opener(opener)
response = opener.open(self.url)
result = response.read()
pattern = re.compile("<td style='text-align: center; color:blue;'>(.*?)<.*?<td>(.*?)</td.*?<img src=(.*?)/>.*?<td title='(.*?)秒'", re.S)
items = re.findall(pattern, result)
with open(self.fileName, 'ab') as f:
localTime = time.asctime(time.localtime(time.time()))
f.write('\n\n================== '+ localTime +' ==================\n\n')
ipList = []
for x in items:
p = 'null'
if x[2].find('yvMpwO0OO0O') != -1:
p = '23'
elif x[2].find('MpAO0OO0O') != -1:
p = '80'
elif x[2].find('QO0OO0O') != -1:
p = '81'
elif x[2].find('gO0OO0O') != -1:
p = '82'
elif x[2].find('4vMpwO0OO0O') != -1:
p = '83'
elif x[2].find('0vNpDMO0O') != -1:
p = '443'
elif x[2].find('4vNpDMO0O') != -1:
p = '843'
elif x[2].find('4vMpDgO0O') != -1:
p = '808'
elif x[2].find('NpAO0OO0O') != -1:
p = '84'
elif x[2].find('mzvMpTI4') != -1:
p = '3128'
elif x[2].find('m2vNpjY2') != -1:
p = '6666'
elif x[2].find('4vMpDAw') != -1:
p = '8000'
elif x[2].find('m4vMpDAz') != -1:
p = '8003'
elif x[2].find('m4vMpDgw') != -1:
p = '8080'
elif x[2].find('pDgx') != -1:
p = '8081'
elif x[2].find('MpDg4') != -1:
p = '8088'
elif x[2].find('MpDkw') != -1:
p = '8090'
elif x[2].find('pTAx') != -1:
p = '8101'
elif x[2].find('pTE4') != -1:
p = '8118'
elif x[2].find('4vOpDg4') != -1:
p = '8888'
elif x[2].find('5vMpDAw') != -1:
p = '9000'
elif x[2].find('5vNpzk3') != -1:
p = '9797'
elif x[2].find('5vOpTk5') != -1:
p = '9999'
elif x[2].find('xvMpDAwMAO0OO0O') != -1:
p = '10000'
elif x[2].find('pDIwMAO0OO0O') != -1:
p = '10200'
elif x[2].find('yvMpDAwMAO0OO0O') != -1:
p = '20000'
elif x[2].find('zvOpTkwMAO0OO0O') != -1:
p = '39900'
elif x[2].find('pzAwMAO0OO0O') != -1:
p = '63000'
if x[3].find('999') == -1:
with open(self.fileName, 'ab') as f:
f.writelines(x[0] + '\t' + x[1] + '\t' + p + '\t' + x[3] + '\n')
if p != 'null':
ipList.append('http://'+x[1]+':' + p)
print '写入完成'
return ipList
#proxy = PROXY()
#proxy.getProxy()