爬蟲如何設置ua和代理ip

一、設置User-Agent
1、創建Request對象時指定headers
url = 'http://ip.zdaye.com/'
head = {}
head['User-Agent'] = 'Mozilla/5.0 (Linux; Android 4.1.1; Nexus 7 Build/JRO03D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Safari/535.19'
req = request.Request(url, headers=head)
#傳入創建好的Request對象
response = request.urlopen(req)
html = response.read().decode('utf-8')
print(html)
2、創建Request對象後使用add_header
req.add_header('User-Agent', 'Mozilla/5.0 (Linux; Android 4.1.1; Nexus 7 Build/JRO03D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Safari/535.19')

參數爲 (key, value)

二、設置代理IP
使用install_opener方法之後,會將程序默認的urlopen方法替換掉。也就是說,如果使用install_opener之後,在該文件中,再次調用urlopen會使用自己創建好的opener。如果不想替換掉,只是想臨時使用一下,可以使用opener.open(url),這樣就不會對程序默認的urlopen有影響。
from urllib import request
if name == "main":
url = www.16yun.cn'
#這是代理IP
proxy = {'http':'168.68.8.88:66666'}
#創建ProxyHandler
proxy_support = request.ProxyHandler(proxy)
#創建Opener
opener = request.build_opener(proxy_support)
#添加User Angent
opener.addheaders = [('User-Agent','Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36')]
#安裝OPener
request.install_opener(opener)
#使用自己安裝好的Opener
response = request.urlopen(url)
html = response.read().decode("utf-8")
print(html)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章