最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python3.4實(shí)現(xiàn)從HTTP代理網(wǎng)站批量獲取代理并篩選的方法示例

 更新時(shí)間:2017年09月26日 08:58:38   作者:multiangle  
這篇文章主要介紹了Python3.4實(shí)現(xiàn)從HTTP代理網(wǎng)站批量獲取代理并篩選的方法,涉及Python網(wǎng)絡(luò)連接、讀取、判斷等相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了Python3.4實(shí)現(xiàn)從HTTP代理網(wǎng)站批量獲取代理并篩選的方法。分享給大家供大家參考,具體如下:

最近在寫爬蟲,苦于不采用代理的情況下,默認(rèn)的IP不出幾分鐘就被封了,故而只能尋找代理。原以為找到HTTP代理就萬(wàn)事大吉了,沒(méi)想到從那個(gè)網(wǎng)站獲取的代理大部分都是不能用的,只有少部分能用。。。故而無(wú)奈之下,只能從那些代理網(wǎng)站大量獲取代理IP,然后再拿過(guò)來(lái)進(jìn)行進(jìn)一步的篩選,將有效的代理IP提取出來(lái),留待進(jìn)一步使用。

篩選的主要原理是,通過(guò)main函數(shù)提取到未經(jīng)篩選的代理rawProxyList,然后通過(guò)這些代理嘗試連接目標(biāo)網(wǎng)站(此文中是連接手機(jī)新浪網(wǎng))。如果在規(guī)定時(shí)間內(nèi)連接成功,則認(rèn)定為有效代理,放到checkedProxyList之中。

__author__ = 'multiangle'
__edition__='python3.4'
import threading
import urllib.request as request
import time
rawProxyList=[]
checkedProxyList=[]
class proxycheck(threading.Thread):
 def __init__(self,proxy_list):
  threading.Thread.__init__(self)
  self.proxy_list=proxy_list
  self.timeout=3
  self.testurl='http://www.sina.cn/'
  self.testStr='手機(jī)新浪網(wǎng)'
 def checkproxy(self):
  cookies=request.HTTPCookieProcessor()
  for proxy in self.proxy_list:
   handler=request.ProxyHandler({'http':'http://%s'%(proxy)})
   opener=request.build_opener(cookies,handler)
   t1=time.time()
   try:
    req=opener.open(self.testurl,timeout=self.timeout)
    res=req.read()
    res=str(res,encoding='utf8')
    usetime=time.time()-t1
    if self.testStr in res:
     checkedProxyList.append((proxy,usetime))
   except Exception as e :
    print(e)
 def run(self):
  self.checkproxy()
if __name__=='__main__':
 num=20
 thread_num=10
 checkThrends=[]
 url='YOUR PROXY URL' #提取代理的網(wǎng)站。
 req=request.urlopen(url).read()
 req=str(req,encoding='utf-8')
 list=req.split('\r\n') #網(wǎng)站返回的是字符串格式,用'\r\n'進(jìn)行分割
 rawProxyList=list
 print('get raw proxy')
 for i in rawProxyList:
  print(i)
 # s=proxycheck_test(rawProxyList)
 batch_size=int((len(rawProxyList)+thread_num-1)/thread_num)
 print(batch_size)
 for i in range(thread_num):
  t=proxycheck(rawProxyList[batch_size*i:batch_size*(i+1)])
  checkThrends.append(t)
 for i in range(checkThrends.__len__()):
  checkThrends[i].start()
 for i in range(checkThrends.__len__()):
  checkThrends[i].join()
 print(checkedProxyList.__len__(),' useful proxy is find')
 for i in checkedProxyList:
  print(i)

更多關(guān)于Python相關(guān)內(nèi)容可查看本站專題:《Python Socket編程技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • Python描述數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)之哈夫曼樹(shù)篇

    Python描述數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)之哈夫曼樹(shù)篇

    這篇文章主要給大家介紹了關(guān)于Python描述數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)之哈夫曼樹(shù)篇的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Django session登陸并獲取值的實(shí)例

    Django session登陸并獲取值的實(shí)例

    這篇文章主要介紹了Django session登陸并獲取值的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-03-03
  • OpenCV特征匹配和單應(yīng)性矩陣查找對(duì)象詳解

    OpenCV特征匹配和單應(yīng)性矩陣查找對(duì)象詳解

    這篇文章主要為大家介紹了OpenCV特征匹配和單應(yīng)性矩陣查找對(duì)象詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • Python面向?qū)ο笾惡蛯?shí)例用法分析

    Python面向?qū)ο笾惡蛯?shí)例用法分析

    這篇文章主要介紹了Python類和實(shí)例用法,較為詳細(xì)的分析了Python面向?qū)ο蟪绦蛟O(shè)計(jì)中類、實(shí)例、構(gòu)造函數(shù)、析構(gòu)函數(shù)、私有變量等相關(guān)概念與使用技巧,需要的朋友可以參考下
    2019-06-06
  • python 回調(diào)函數(shù)和回調(diào)方法的實(shí)現(xiàn)分析

    python 回調(diào)函數(shù)和回調(diào)方法的實(shí)現(xiàn)分析

    這篇文章主要介紹了python 回調(diào)函數(shù)和回調(diào)方法的實(shí)現(xiàn)分析,需要的朋友可以參考下
    2016-03-03
  • Python交換字典鍵值對(duì)的四種方法實(shí)例

    Python交換字典鍵值對(duì)的四種方法實(shí)例

    字典中有成對(duì)出現(xiàn)的鍵和值,但是字典中的鍵值對(duì)不是都能修改的,只有值才能修改,下面這篇文章主要給大家介紹了關(guān)于Python交換字典鍵值對(duì)的四種方法,需要的朋友可以參考下
    2022-12-12
  • python smtplib模塊自動(dòng)收發(fā)郵件功能(二)

    python smtplib模塊自動(dòng)收發(fā)郵件功能(二)

    這篇文章主要為大家詳細(xì)介紹了python smtplib模塊自動(dòng)收發(fā)郵件功能的第二篇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • 在Django模型中的Mysql安裝全過(guò)程

    在Django模型中的Mysql安裝全過(guò)程

    這篇文章主要介紹了在Django模型中的Mysql安裝全過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-03-03
  • Python中json.dumps()函數(shù)使用和示例

    Python中json.dumps()函數(shù)使用和示例

    這篇文章主要介紹了Python中json.dumps()函數(shù)使用和示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • Pandas中inf值替換的方法

    Pandas中inf值替換的方法

    本文主要介紹了Pandas中inf值替換的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08

最新評(píng)論

苍溪县| 昭平县| 阿坝县| 深水埗区| 洪江市| 天峻县| 榆中县| 日土县| 通海县| 通城县| 长葛市| 岑溪市| 桐乡市| 威远县| 乌鲁木齐市| 客服| 北流市| 东丽区| 开阳县| 忻州市| 中方县| 和田市| 武城县| 河间市| 双峰县| 惠来县| 宁远县| 蕲春县| 汉中市| 正镶白旗| 怀化市| 紫金县| 佛冈县| 灌阳县| 揭阳市| 汕尾市| 阳朔县| 上犹县| 菏泽市| 英山县| 枣阳市|