python用IP代理的方法:首先創(chuàng)建代理ip對(duì)象;然后定制一個(gè)opener對(duì)象;接著urlopen就一直使用這個(gè)代理地址;最后發(fā)出請(qǐng)求時(shí),就是用到這個(gè)代理地址了。
鐵東網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,鐵東網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為鐵東超過千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)公司要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的鐵東做網(wǎng)站的公司定做!
【相關(guān)學(xué)習(xí)推薦:python教程】
python用IP代理的方法:
python使用代理的方法有兩種
1.
1 #先創(chuàng)建代理ip對(duì)象 2 proxy_support = urllib.request.ProxyHandler({'https':'117.64.149.137:808'}) 3 4 #定制一個(gè)opener對(duì)象 5 opener = urllib.request.build_opener(proxy_support) 6 7 #安裝這個(gè)opener對(duì)象,以后的urlopen就一直使用這個(gè)代理地址了 8 urllib.request.install_opener(opener) 9 10 #發(fā)出請(qǐng)求時(shí),就是用到這個(gè)代理地址了 11 html = urllib.request.urlopen('xxxxxxxxxx').read()
2.
1 #先創(chuàng)建代理ip對(duì)象 2 proxy_support = urllib.request.ProxyHandler({'https':'117.64.149.137:808'}) 3 4 #定制一個(gè)opener對(duì)象 5 opener = urllib.request.build_opener(proxy_support) 6 7 #這里可以直接使用opener對(duì)象發(fā)出請(qǐng)求 8 html = opener.open('xxxxxxxxx').read()
示例代碼:
1 import urllib.request 2 3 #這一段三句話是為了請(qǐng)求時(shí)帶上瀏覽器標(biāo)識(shí),因?yàn)橛械木W(wǎng)站看到是爬蟲的標(biāo)識(shí)直接返回403 4 #請(qǐng)求的網(wǎng)站不涉及到提交數(shù)據(jù),所以沒有給出data參數(shù) 5 url = 'https://whatismyipaddress.com/' 6 header = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36'} 7 req = urllib.request.Request(url,headers=header) 8 9 #使用代理和還原不使用代理的方法 10 #if語(yǔ)句相當(dāng)于一個(gè)開關(guān),不要寫成True 11 use_proxy = urllib.request.ProxyHandler({'https':'117.64.149.137:808'}) 12 null_proxy = urllib.request.ProxyHandler() 13 if True: 14 opener = urllib.request.build_opener(use_proxy) 15 else: 16 opener = urllib.request.build_opener(null_proxy) 17 #根據(jù)上面的開關(guān),安裝的opener對(duì)象是否帶有代理地址 18 urllib.request.install_opener(opener) 19 20 #獲取返回結(jié)果 21 #同時(shí)可以使用html = opener.open(req).read()獲取結(jié)果 22 html = urllib.request.urlopen(req).read() 23 24 #這網(wǎng)頁(yè)返回頁(yè)面的內(nèi)容太多,在控制臺(tái)不好查看, 25 #并且返回的內(nèi)容是二進(jìn)制格式,可以直接寫入文件,當(dāng)個(gè)網(wǎng)頁(yè)查看 26 with open('E:\\\\whatismyip.html','wb') as file: 27 file.write(html) 28 print('OK')
想了解更多相關(guān)學(xué)習(xí),敬請(qǐng)關(guān)注php培訓(xùn)欄目!