系統(tǒng)運(yùn)維
在學(xué)習(xí)爬蟲的過(guò)程中在有的時(shí)候沒使用頭在使用python的爬蟲腳本剛爬了兩次,就只是測(cè)試了一下就打不開這個(gè)網(wǎng)頁(yè)了,剛開始還一直迷糊著,到后來(lái)才知道,python在做爬蟲的時(shí)候默認(rèn)的user agent就是python的大版本,python2.7.的User-Agent: Python-urllib/2.7;python3.5.的User-Agent: Python-urllib/3.5
下面來(lái)做個(gè)試驗(yàn):
python代碼如下:
python2
import urllib2
url = http://www.baidu.com/
request = urllib2.Request(url)
response = urllib2.urlopen(request)
print(response.read())
python3
from urllib import request
url = http://www.baidu.com/
req = request.Request(url)
response = request.urlopen(req)
print(response.read().decode()
我們開啟fiddler,運(yùn)行完成代碼,然后在fiddler上面查看下我們的數(shù)據(jù)
很明顯就是python的版本,
因此我們?cè)趯W(xué)習(xí)爬蟲的時(shí)候無(wú)論爬什么,代碼最好都要加上這個(gè)頭信息
下面我們?cè)诖a上加入一個(gè)頭
from urllib import request
headers = {
User-Agent:Mozilla/5.0 (Windows NT 10.0; WOW64
}
url = http://www.baidu.com/
req = request.Request(url,headers=headers)
response = request.urlopen(req)
print(response.read().decode())
抓包的結(jié)果如下: