第一若是你發現你抓取到的信息和目標網站所顯示的正常信息不同,或者說所抓取的信息是空白的,那麼頗有可能就是你抓取的網站在建立頁面的時候程序出現了問題,若是抓取的頻率高過了目標網站的限制閥值,就會被禁止訪問。在一般狀況下,IP就是網站的反扒中機制的依據,當咱們對網站進行訪問的時候,咱們的IP地址就會被記錄,服務器就會把你看成是爬蟲的程序,因此頻繁的爬取就致使現有的IP地址是不可用的,這樣咱們就要想辦法來修改目前本身設備的IP地址或者是現有的爬蟲程序
因此爬蟲開發者一般須要採起兩種手段解決此類問題
手段一:放慢抓取速度,這樣目標網站的壓力就會相對減少,可是這麼作的話,單位時間以內的抓取量就會相應的減小。
手段二:設置代理IP,突破反爬蟲機制進行高頻率抓取,這樣就須要多個穩定的代理IP。普通的基於ADSL撥號的解決辦法。一般,在抓取過程當中遇到禁止訪問,能夠從新進行ADSL撥號,獲取新的IP,從而能夠繼續抓取。可是這樣在多網站多線程抓取的時候,若是某一個網站的抓取被禁止了,同時也影響到了其餘網站的抓取,總體來講也會下降抓取速度。 另一種可能的解決辦法,一樣也是基於ADSL撥號,不一樣的是,須要兩臺可以進行ADSL撥號的服務器,抓取過程當中使用這兩臺服務器做爲代理。 假設有A、B兩臺能夠進行ADSL撥號的服務器。爬蟲程序在C服務器上運行,使用A做爲代理訪問外網,若是在抓取過程當中遇到禁止訪問的狀況,當即將代理切換爲B,而後將A進行從新撥號。若是再遇到禁止訪問就切換爲A作代理,B再撥號,如此反覆。 還有不少問題須要咱們在實際抓取過程當中,根據問題實際分析實際解決,很大程度上來講,爬蟲抓取是一項很麻煩並且很困難的工做,所以如今不少軟件被研發出來,旨在解決爬蟲程序的各類問題。