proxies的格式是一個字典:{‘http’: ‘http://42.84.226.65:8888‘}
有http與https兩種,在爬取不同網站時我們需要選用不同類型的網站時選用不同的proxise,在不知道網站類型時可以將兩種類型均放進去,requests會自動選擇合適的
proxies = { "http": "http://10.10.1.10:3128", "https": "http://10.10.1.10:1080" }
- http型:{‘http’: ‘http://42.84.226.65:8888‘}
- https型:{‘https’: ‘http://124.193.37.5:8888‘}
如果你是這樣的
proxies = { "https": "http://10.10.1.10:1080" }
而你要爬的是http型網站
你的requests也可以成功,但是使用的還是你真實的ip地址
只有當你的proxies類型與你想訪問的網站類型相同,代理ip才會起作用
可以用以下代碼檢驗你的代理ip是否成功啟用
import requests proxies = { "https": "http://10.10.1.10:1080" } req = requests.get('http://icanhazip.com/', proxies=proxies) print(req.content)
訪問 http://icanhazip.com/(https://icanhazip.com/) 可以得到你訪問時的ip地址
判斷代理是否有效的方法
import telnetlib try: telnetlib.Telnet('10.10.1.10', port='1080', timeout=3) except: print('ip無效!') else: print('ip有效!')
來自:https://blog.csdn.net/qq_38251616/article/details/81675871?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task