該網站管理員已決定,該網站應該假裝不存在沒有在他們的頭分享他們的用戶代理客戶端:
>>> import requests
>>> url = 'http://www.transfermarkt.com/'
>>> requests.get(url).raise_for_status()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/site-packages/requests/models.py", line 831, in raise_for_status
raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 404 Client Error: Not Found
的假期,因爲你已經發現了。設置一個用戶代理:
>>> headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:39.0)'}
>>> requests.get(url, headers=headers).raise_for_status()
>>>
你很好。
看起來網站管理員不希望你這樣做,所以也許你可以請求許可或詢問是否有首選方式獲取內容,但沒有用戶代理集是技術原因。