更新時間:2017-12-18 來源:黑馬程序員 瀏覽量:
現在,有越來越多所謂的“教程”來幫助我們提高爬蟲的易用性。本人收集了一些在爬蟲開發(fā)中容易出錯和被難住的小問題,提供了參考的意見和想法,以便于幫助爬蟲開發(fā)者。
1、爬蟲亂碼(網址亂碼、返回頁面亂碼、提交數據亂碼)
關于爬蟲亂碼有很多群友的各式各樣的問題,不僅是中文亂碼,還包括一些如日文、韓文 、俄文、藏文之類的亂碼處理,因此 確定源網頁的編碼。
2、含有驗證碼表單登陸
屬于post請求,即先向服務器發(fā)送表單數據,需要驗證碼的情況可以使用帶驗證碼登陸的cookie解決。
3、使用代理
適用情況:限制IP地址情況,最好的辦法就是維護一個代理IP池。
4、限制頻率情況
限制爬蟲訪問網站的頻率來避免被網站禁掉。
5、“反盜鏈”
加上Referer,偽裝成瀏覽器。
6、自動化測試工具Selenium
Selenium是一款自動化測試工具。它能實現操縱瀏覽器,包括字符填充、鼠標點擊、獲取元素、頁面切換等一系列操作。
7、驗證碼識別
利用開源的Tesseract-OCR。
8、多線程抓取
高并發(fā)提交采集效率。
需要更多人工智能+Python學習視頻+資料+源碼,請加QQ:2632311208
本文版權歸黑馬程序員人工智能+Python學院所有,歡迎轉載,轉載請注明作者出處。謝謝!
作者:黑馬程序員人工智能+Python培訓學院
首發(fā):http://python.itheima.com/