python爬蟲快速響應(yīng)服務(wù)器的做法
不論是打開網(wǎng)頁或者爬取一些資料的時候,我們想要的是計算機(jī)能在最短的時間內(nèi)運(yùn)行出結(jié)果,不然等待的時間過長會影響下一步工作的計劃。這時候我們可以給計算機(jī)一個指令,限制最久能等待的時間,在我們能接受的時間內(nèi)運(yùn)行出結(jié)果。那么這個指令方法是什么呢?接下來我們一起看看吧。
requests之所以稱為“HTTP for human”,因為其封裝層次很高,其中一處體現(xiàn)就在:requests會自動處理服務(wù)器響應(yīng)的重定向。我在做搜狗微信公眾號抓取的時候,搜狗搜索列表頁面的公眾號文章地址,其實不是微信的地址而需要請求到搜狗到服務(wù)器做重定向,而requests的默認(rèn)處理則是將整個過程全部搞定,對此可以這樣:
In [1]: r = requests.get('http://xlzd.me', allow_redirects=False)
allow_redirects參數(shù)為False則表示不會主動重定向。
另外,有時候?qū)Ψ骄W(wǎng)站的響應(yīng)時間太長了,我們希望在指定時間內(nèi)完事,或者直接停止這個請求,這時候的做法是:
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)
到此這篇關(guān)于python爬蟲快速響應(yīng)服務(wù)器的做法的文章就介紹到這了,更多相關(guān)python爬蟲中如何快速響應(yīng)服務(wù)器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python 兩個列表的差集、并集和交集實現(xiàn)代碼
這篇文章主要介紹了Python 兩個列表的差集、并集和交集實現(xiàn)代碼,需要的朋友可以參考下2016-09-09python如果快速判斷數(shù)字奇數(shù)偶數(shù)
這篇文章主要介紹了python如果快速判斷數(shù)字奇數(shù)偶數(shù),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-11-11python初學(xué)者,用python實現(xiàn)基本的學(xué)生管理系統(tǒng)(python3)代碼實例
這篇文章主要介紹了用python實現(xiàn)學(xué)生管理系統(tǒng),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04Python?正則表達(dá)式基礎(chǔ)知識點(diǎn)及實例
在本篇文章里小編給大家整理了關(guān)于Python正則表達(dá)式的一些基礎(chǔ)知識點(diǎn)以及相關(guān)用法實例內(nèi)容,需要的朋友們可以參考下。2021-12-12Python 實現(xiàn)將某一列設(shè)置為str類型
這篇文章主要介紹了Python 實現(xiàn)將某一列設(shè)置為str類型,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-07-07unittest+coverage單元測試代碼覆蓋操作實例詳解
這篇文章主要為大家詳細(xì)介紹了unittest+coverage單元測試代碼覆蓋操作的實例,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-04-04python中(負(fù)數(shù))整除和取模運(yùn)算方式
Python中的取模運(yùn)算符是%,它與其他語言中的取余符號相同,整除運(yùn)算符是//,表示向下取整,在Python中,正數(shù)的取余和取模結(jié)果相同,但負(fù)數(shù)的取余和取模結(jié)果有所不同,取余運(yùn)算在計算時向0方向舍棄小數(shù)位,而取模運(yùn)算向負(fù)無窮方向舍棄小數(shù)位2024-10-10