爬蟲ip代理池搭建前需解決的問題及搭建思路
在公司做分散式深網爬蟲,搭建了一套穩定的代理池服務,為上千個爬蟲提供有效的代理,保證各個爬蟲拿到的都是對應網站有效的代理IP,從而保證爬蟲快速穩定的執行,當然在公司做的東西不能開源出來。不過呢,閒暇時間手癢,所以就想利用一些免費的資源搞一個簡單的代理池服務。
1、問題
代理IP從何而來?
剛自學爬蟲的時候沒有代理IP就去西刺、快代理之類有免費代理的網站去爬,還是有個別代理能用。當然,如果你有更好的代理介面也可以自己接入。
免費代理的採集也很簡單,無非就是:訪問頁面頁面 —> 正則/xpath提取 —> 儲存
如何保證代理質量?
可以肯定免費的代理IP大部分都是不能用的,不然別人為什麼還提供付費的(不過事實是很多代理商的付費IP也不穩定,也有很多是不能用)。所以採集回來的代理IP不能直接使用,可以寫檢測程式不斷的去用這些代理訪問一個穩定的網站,看是否可以正常使用。這個過程可以使用多執行緒或非同步的方式,因為檢測代理是個很慢的過程。
採集回來的代理如何儲存?
這裡不得不推薦一個高效能支援多種資料結構的NoSQL資料庫SSDB,用於代理Redis。支援佇列、hash、set、k-v對,支援T級別資料。是做分散式爬蟲很好中間儲存工具。
如何讓爬蟲更簡單的使用這些代理?
答案肯定是做成服務咯,python有這麼多的web框架,隨便拿一個來寫個api供爬蟲呼叫。這樣有很多好處,比如:當爬蟲發現代理不能使用可以主動透過api去delete代理IP,當爬蟲發現代理池IP不夠用時可以主動去refresh代理池。這樣比檢測程式更加靠譜。
2、代理池設計
代理池由四部分組成:
ProxyGetter:
代理獲取介面,目前有5個免費代理源,每呼叫一次就會抓取這個5個網站的最新代理放入DB,可自行新增額外的代理獲取介面;
DB:
用於存放代理IP,現在暫時只支援SSDB。至於為什麼選擇SSDB,大家可以參考這篇文章,個人覺得SSDB是個不錯的Redis替代方案,如果你沒有用過SSDB,安裝起來也很簡單,可以參考這裡;
Schedule:
計劃任務使用者定時去檢測DB中的代理可用性,刪除不可用的代理。同時也會主動透過ProxyGetter去獲取最新代理放入DB;
ProxyApi:
代理池的外部介面,由於現在這麼代理池功能比較簡單,花兩個小時看了下Flask,愉快的決定用Flask搞定。功能是給爬蟲提供get/delete/refresh等介面,方便爬蟲直接使用。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31561288/viewspace-2285933/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 爬蟲如何使用ip代理池爬蟲
- 如何建立爬蟲代理ip池爬蟲
- Python 爬蟲IP代理池的實現Python爬蟲
- 如何利用ip住宅代理解決python爬蟲遇到反爬措施的問題?Python爬蟲
- 代理ip池對爬蟲有多重要爬蟲
- 爬蟲搭建代理池、爬取某網站影片案例、爬取新聞案例爬蟲網站
- 手把手教你爬蟲代理ip池的建立爬蟲
- Harbor搭建及配置 問題解決
- 爬蟲常見問題及解決方式爬蟲
- 如何用海外HTTP代理設定python爬蟲代理ip池?HTTPPython爬蟲
- 技術分享:Proxy-Pool代理池搭建IP代理
- 代理ip池對爬蟲有什麼好處爬蟲
- python 爬蟲 代理池Python爬蟲
- scrapy爬蟲代理池爬蟲
- python爬蟲ip代理伺服器的簡要思路-VeCloudPython爬蟲伺服器Cloud
- python 爬蟲 ip池怎麼做,有什麼思路?Python爬蟲
- 爬蟲採集自建代理ip池的三大優勢爬蟲
- Fabric 環境搭建遇到問題及解決
- 爬蟲代理IP的使用技巧爬蟲
- 如何建立爬蟲IP池?爬蟲
- Proxypool代理池搭建
- 爬蟲之代理池維護爬蟲
- 爬蟲代理怎麼選ip爬蟲
- 代理IP如何突破反爬蟲?爬蟲
- 爬蟲使用代理防封IP爬蟲
- 如何用http代理的ip池繞過網站反爬蟲機制?HTTP網站爬蟲
- 爬蟲IP受限的三個解決方法爬蟲
- python爬蟲實戰:爬取西刺代理的代理ip(二)Python爬蟲
- 爬蟲代理IP的三大作用爬蟲
- 爬蟲需要代理IP的基本要求爬蟲
- 爬蟲中代理IP的常見方案爬蟲
- Python代理IP爬蟲的簡單使用Python爬蟲
- 爬蟲框架如何搭建爬蟲框架
- 【PhpSelenium】3.定時爬蟲 + 多工爬蟲 + 代理池PHP爬蟲
- [PhpSelenium] 3.定時爬蟲 + 多工爬蟲 + 代理池PHP爬蟲
- 實用爬蟲-02-爬蟲真正使用代理 ip爬蟲
- python爬蟲爬取網頁中文亂碼問題的解決Python爬蟲網頁
- 爬蟲代理IP有哪些好處?爬蟲