Python爬蟲老是被封的解決方法【面試必問】


在爬取的過程中難免發生 ip 被封和 403 錯誤等等,這都是網站檢測出你是爬蟲而進行反爬措施,在這里為大家總結一下 Python 爬蟲 動態 ip 代理防止被封的方法。

PS:另外很多人在學習Python的過程中,往往因為遇問題解決不了從而導致自己放棄,為此我建了個Python全棧開發交流.裙 :一久武其而而流一思(數字的諧音)轉換下可以找到了,里面有最新Python教程項目可拿,不懂的問題有老司機解決哦,一起相互監督共同進步

\

首先,設置等待時間:

\

常見的設置等待時間有兩種,一種是顯性等待時間(強制停幾秒),一種是隱性等待時間(看具體情況,比如根據元素加載完成需要時間而等待)圖 1 是顯性等待時間設置,圖 2 是隱性。

 

Python爬蟲動態ip代理防止被封的方法
 

 

 

Python爬蟲動態ip代理防止被封的方法
 

 

第二步,修改請求頭:

\

識別你是機器人還是人類瀏覽器瀏覽的重要依據就是 User-Agent,比如人類用瀏覽器瀏覽就會使這個樣子的 User-Agent:’Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36’

 

Python爬蟲動態ip代理防止被封的方法
 

 

第三步,采用代理 ip / 建代理 ip 池

\

直接看代碼。利用動態 ip 代理,可以強有力地保障爬蟲不會被封,能夠正常運行。圖 1 為使用代理 ip 的情況,圖 2 是建 ip 代理池的代碼,有沒有必要需要看自己的需求,大型項目是必須用大量 ip 的。

 

Python爬蟲動態ip代理防止被封的方法
 

 

做好以上 3 個步驟,大致爬蟲的運行就不成問題了。

都明白了嗎?另外很多人在學習Python的過程中,往往因為遇問題解決不了從而導致自己放棄,為此我建了個Python全棧開發交流.裙 :一久武其而而流一思(數字的諧音)轉換下可以找到了,里面有最新Python教程項目可拿,不懂的問題有老司機解決哦,一起相互監督共同進步

本文的文字及圖片來源於網絡加上自己的想法,僅供學習、交流使用,不具有任何商業用途,版權歸原作者所有,如有問題請及時聯系我們以作處理。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM