如何抓取代理ip?當(dāng)我們使用網(wǎng)絡(luò)編寫腳本從指定的網(wǎng)站抓取數(shù)據(jù)時,網(wǎng)站總是不可避免的會屏蔽IP,所以這個時候我們需要一些代理IP。當(dāng)我們打開網(wǎng)頁的時候,很容易就能找到很多提供免費代理IP做IP抓取的網(wǎng)站,這里介紹的是國內(nèi)匿名代理IP。
第一步:HTML頁面獲取
通過觀察,我們可以發(fā)現(xiàn)我們需要的信息的頁面的url有這樣一個規(guī)律:www.xxxxxx.com/nn/+頁碼。但是,如果您通過get方法直接訪問它,您將發(fā)現(xiàn)500個錯誤。原因是在這個規(guī)則下,雖然URL通過get方法獲取數(shù)據(jù),但是它們都有cookie認證。那么問題來了——你怎么得到你需要的餅干?我們第一次通過瀏覽器訪問網(wǎng)站首頁,是可以打開的,網(wǎng)站的所有子模塊都可以打開。在一定時間內(nèi),我們的瀏覽器得到了這個網(wǎng)站設(shè)置的cookie。清除瀏覽器cookie,重新打開網(wǎng)站主頁,通過開發(fā)者工具,我們可以發(fā)現(xiàn)打開主頁時,網(wǎng)站會發(fā)出cookie,而不是上傳cookie。然后打開上面我們找到的常規(guī)url頁面,對比一下,發(fā)現(xiàn)我們上傳的cookie就是首頁發(fā)布的cookie。這就是解決方案——編寫腳本時,首先訪問主頁獲取cookie,然后將cookie添加到后續(xù)請求中。
第二步:分析html結(jié)構(gòu),用BS4提取信息。
上面簡單介紹了如何抓取代理IP,具體代碼需要自己搜索。