1.通過spider打開壹個csdn博主的主頁,會發現狀態碼返回403,這就說明這個博客網頁加了限制。
我們先通過Google的chrome瀏覽器打開這個csdn博客(/jizhen_tan/article/details/51661203),再通過F12打開抓包工具,找到network這壹選項欄再刷新網頁,就會發現這些東西:
?我們點開第壹個Name51661203,會在headers中發現有三個元素:General、Response Headers、Requset Headers。我們要做的是模仿Requset Headers中的寫法來把spider偽裝成瀏覽器對網頁進行訪問。
2.這次用到的庫為urllib2,它是urllib的擴展。
在headers中主要添加四個元素:User-Agent、Host、GET,這些都可以在Requset Headers中找到。headers是壹個字典型。
3.壹些網站會對User-Agent進行檢測,如果壹個時間段內過多的訪問就會遭到封IP,因此我們可以通過隨機變換User-Agent來進行訪問:
通過壹個循環來實現: