1. 程式人生 > 程式設計 >python爬蟲快速響應伺服器的做法

python爬蟲快速響應伺服器的做法

不論是開啟網頁或者爬取一些資料的時候,我們想要的是計算機能在最短的時間內執行出結果,不然等待的時間過長會影響下一步工作的計劃。這時候我們可以給計算機一個指令,限制最久能等待的時間,在我們能接受的時間內執行出結果。那麼這個指令方法是什麼呢?接下來我們一起看看吧。

requests之所以稱為“HTTP for human”,因為其封裝層次很高,其中一處體現就在:requests會自動處理伺服器響應的重定向。我在做搜狗微信公眾號抓取的時候,搜狗搜尋列表頁面的公眾號文章地址,其實不是微信的地址而需要請求到搜狗到伺服器做重定向,而requests的預設處理則是將整個過程全部搞定,對此可以這樣:

In [1]: r = requests.get('http://xlzd.me',allow_redirects=False)

allow_redirects引數為False則表示不會主動重定向。

另外,有時候對方網站的響應時間太長了,我們希望在指定時間內完事,或者直接停止這個請求,這時候的做法是:

In [1]: r = requests.get('http://xlzd.me',timeout=3)

timeout表示這次請求最長我最長只等待多少秒

拓展:

為requests套上一層代理的做法也非常簡單:

import requests
proxies = {
 "http": "http://192.168.31.1:3128","https": "http://10.10.1.10:1080",}
requests.get("http://xlzd.me",proxies=proxies)

到此這篇關於python爬蟲快速響應伺服器的做法的文章就介紹到這了,更多相關python爬蟲中如何快速響應伺服器內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!