您的位置:首頁技術文章
文章詳情頁

Python 快速驗證代理IP是否有效的方法實現

瀏覽:92日期:2022-06-15 08:22:32

有時候,我們需要用到代理IP,比如在爬蟲的時候,但是得到了IP之后,可能不知道怎么驗證這些IP是不是有效的,這時候我們可以使用Python攜帶該IP來模擬訪問某一個網站,如果多次未成功訪問,則說明這個代理是無效的。

代碼如下:

import requestsimport randomimport timehttp_ip = [ ’118.163.13.200:8080’, ’222.223.182.66:8000’, ’51.158.186.242:8811’, ’171.37.79.129:9797’, ’139.255.123.194:4550’]for i in range(10): try:ip_proxy = random.choice(http_ip)proxy_ip = { ’http’: ip_proxy, ’https’: ip_proxy,}print(’使用代理的IP:’, proxy_ip)response = requests.get('http://httpbin.org/ip', proxies=proxy_ip).textprint(response)print(’當前IP有效’)time.sleep(2) except Exception as e:print(e.args[0])print(’當前IP無效’)continue

運行結果如下:

使用代理的IP: {’http’: ’118.163.13.200:8080’, ’https’: ’118.163.13.200:8080’}HTTPConnectionPool(host=’118.163.13.200’, port=8080): Max retries exceeded with url: http://httpbin.org/ip (Caused by ProxyError(’Cannot connect to proxy.’, NewConnectionError(’<urllib3.connection.HTTPConnection object at 0x00000247674F5F88>: Failed to establish a new connection: [WinError 10060] 由于連接方在一段時間后沒有正確答復或連接的主機沒有反應,連接嘗試失敗?!?))當前IP無效使用代理的IP: {’http’: ’51.158.186.242:8811’, ’https’: ’51.158.186.242:8811’}{ 'origin': '51.158.186.242'}

當前IP有效使用代理的IP: {’http’: ’222.223.182.66:8000’, ’https’: ’222.223.182.66:8000’}{ 'origin': '139.202.62.84, 222.223.182.66'}

當前IP有效使用代理的IP: {’http’: ’51.158.186.242:8811’, ’https’: ’51.158.186.242:8811’}{ 'origin': '51.158.186.242'}

當前IP有效使用代理的IP: {’http’: ’51.158.186.242:8811’, ’https’: ’51.158.186.242:8811’}{ 'origin': '51.158.186.242'}

當前IP有效使用代理的IP: {’http’: ’222.223.182.66:8000’, ’https’: ’222.223.182.66:8000’}HTTPConnectionPool(host=’222.223.182.66’, port=8000): Max retries exceeded with url: http://httpbin.org/ip (Caused by ProxyError(’Cannot connect to proxy.’, NewConnectionError(’<urllib3.connection.HTTPConnection object at 0x00000247675067C8>: Failed to establish a new connection: [WinError 10060] 由于連接方在一段時間后沒有正確答復或連接的主機沒有反應,連接嘗試失敗?!?))當前IP無效使用代理的IP: {’http’: ’139.255.123.194:4550’, ’https’: ’139.255.123.194:4550’}HTTPConnectionPool(host=’139.255.123.194’, port=4550): Max retries exceeded with url: http://httpbin.org/ip (Caused by ProxyError(’Cannot connect to proxy.’, NewConnectionError(’<urllib3.connection.HTTPConnection object at 0x00000247674F55C8>: Failed to establish a new connection: [WinError 10060] 由于連接方在一段時間后沒有正確答復或連接的主機沒有反應,連接嘗試失敗。’)))當前IP無效使用代理的IP: {’http’: ’51.158.186.242:8811’, ’https’: ’51.158.186.242:8811’}{ 'origin': '51.158.186.242'}

當前IP有效使用代理的IP: {’http’: ’51.158.186.242:8811’, ’https’: ’51.158.186.242:8811’}{ 'origin': '51.158.186.242'}

當前IP有效使用代理的IP: {’http’: ’222.223.182.66:8000’, ’https’: ’222.223.182.66:8000’}HTTPConnectionPool(host=’222.223.182.66’, port=8000): Max retries exceeded with url: http://httpbin.org/ip (Caused by ProxyError(’Cannot connect to proxy.’, NewConnectionError(’<urllib3.connection.HTTPConnection object at 0x0000024767514908>: Failed to establish a new connection: [WinError 10060] 由于連接方在一段時間后沒有正確答復或連接的主機沒有反應,連接嘗試失敗。’)))當前IP無效

到此這篇關于Python 快速驗證代理IP是否有效的方法實現的文章就介紹到這了,更多相關Python 驗證代理IP是否有效內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
国产综合久久一区二区三区