1. 程式人生 > >網頁爬蟲例項(二)-頁面出現意外錯誤

網頁爬蟲例項(二)-頁面出現意外錯誤

# Copyright (c)2018, 東北大學軟體學院學生
# All rightsreserved
# 檔名稱:justForTest.py
# 作   者:孔雲
#問題描述:訪問亞馬遜網頁,出現意外錯誤,解決辦法是修改網頁http的頭部
# coding:utf-8
import requests
r=requests.get("http://www.amazon.cn/gp/product/B01M8L5Z3Y")
print(r.status_code) #狀態碼檢查是否連結成功,200連結成功,否則失敗
print(r.encoding)
r.encoding=r.apparent_encoding
print(r.text)

執行結果:


由結果知,出現了錯誤。不能訪問網頁。

加入程式碼檢查:

print(r.request.headers)

執行結果:


發現User-Agent值,知道是由python-requests庫一個程式訪問引起的,不支援這樣的訪問,接下來更改http頭部資訊,然後訪問網頁。程式碼如下:

import requests
kv={'User-Agent':'Mozilla/5.0'} #重新定義User-Agent值,這時瀏覽器可能是火狐、谷歌或其他,Mozilla/5.0是一個標準的瀏覽器標識欄位
url="http://www.amazon.cn/gp/product/B01M8L5Z3Y"
r=requests.get(url,headers=kv)
print(r.status_code)
print(r.request.headers)
print(r.text[:1000])

上述程式碼執行結果:


內容如下:


完美!