[發明專利]一種爬蟲代理自動切換方法及裝置在審
| 申請號: | 201610056419.8 | 申請日: | 2016-01-27 |
| 公開(公告)號: | CN105740384A | 公開(公告)日: | 2016-07-06 |
| 發明(設計)人: | 毛立花;王傳超;孫海峰 | 申請(專利權)人: | 浪潮軟件集團有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 濟南信達專利事務所有限公司 37100 | 代理人: | 李世喆 |
| 地址: | 250100 山東*** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 爬蟲 代理 自動 切換 方法 裝置 | ||
技術領域
本發明涉及互聯網技術領域,特別涉及一種爬蟲代理自動切換方法及裝置。
背景技術
隨著互聯網技術的不斷發展,互聯網數據的采集,已經成為企業開發大數據產業的重要環節。企業一般采用爬蟲技術實現互聯網數據的采集,然而許多網站為了防止爬蟲所帶來的系統壓力,采取了反爬蟲技術,不允許爬蟲進行高頻率的數據采集。
目前,為了應對反爬蟲技術,進程可以向代理發起請求,由代理實現網頁下載,如此,網站則不能檢測到真正采集網頁的機器。
在現有技術中,代理每下載一次網頁,則切換一次代理,以了降低代理進行網頁下載的頻率,然而,在每次切換代理時需要耗費較長的時間,從而給互聯網數據的采集效率造成影響。
發明內容
本發明實施例提供了一種爬蟲代理自動切換方法及裝置,以使在滿足當前代理在下載網頁失敗的條件時自動實現代理切換。
本發明實施例提供了一種爬蟲代理自動切換方法,包括:
S1:從候選隊列中選擇目標代理,其中,所述候選隊列中存儲有至少一個處于候選狀態的代理;
S2:向所述目標代理發送爬蟲指令,以使所述目標代理根據所述爬蟲指令進行網頁下載;
S3:判斷所述目標代理是否對當前網頁下載成功,在判斷結果包括下載成功時,則執行S4;在判斷結果包括下載失敗時,則執行S5;
S4:繼續使用所述目標代理執行對下一個網頁的下載,將下一個網頁作為當前網頁并執行S3;
S5:將所述目標代理放置到所述候選隊列中,并執行S1。
其中,
所述從候選隊列中選擇目標代理,包括:將位于所述候選隊列頭部/尾部的代理作為選擇的所述目標代理;
所述將所述目標代理放置到所述候選隊列中,包括:將所述目標代理放置到所述候選隊列的尾部/頭部。
其中,在將所述目標代理放置到所述候選隊列中之前,進一步包括:對所述目標代理的當前嘗試次數執行減1操作,并判斷執行減1操作之后的所述目標代理的當前嘗試次數是否為0,若為0,則將所述目標代理設置為無效狀態并丟棄;若不為0,則對執行了減1操作之后的所述目標代理執行所述將所述目標代理放置到所述候選隊列中。
其中,在所述繼續使用所述目標代理執行對下一個網頁的下載之前,進一步包括:將所述目標代理的當前嘗試次數恢復到預先為所述目標代理設置的最大嘗試次數。
其中,在所述判斷結果包括下載失敗之后,進一步包括:判斷所述當前網頁被下載失敗的次數是否達到預先針對所述當前網頁設置的最大失敗次數,若達到,則放棄對所述當前網頁的下載。
本發明實施例還提供了一種爬蟲代理自動切換裝置,包括:
選擇單元,用于從候選隊列中選擇目標代理,其中,所述候選隊列中存儲有至少一個處于候選狀態的代理;
發送單元,用于向所述目標代理發送爬蟲指令,以使所述目標代理根據所述爬蟲指令進行網頁下載;
第一判斷單元,用于判斷所述目標代理是否對當前網頁下載成功,在判斷結果包括下載成功時,則觸發第一處理單元執行相應操作;在判斷結果包括下載失敗時,則觸發放置單元執行相應操作;
第一處理單元,用于繼續使用所述目標代理執行對下一個網頁的下載,將下一個網頁作為當前網頁并所述第一判斷單元執行相應操作;
放置單元,用于將所述目標代理放置到所述候選隊列中,并觸發所述選擇單元執行相應操作。
其中,
所述選擇單元,具體用于將位于所述候選隊列頭部/尾部的代理作為選擇的所述目標代理;
所述放置單元,具體用于將所述目標代理放置到所述候選隊列的尾部/頭部。
其中,進一步包括:第二處理單元,用于對所述目標代理的當前嘗試次數執行減1操作,并判斷執行減1操作之后的所述目標代理的當前嘗試次數是否為0,若為0,則將所述目標代理設置為無效狀態并丟棄;若不為0,則對執行了減1操作之后的所述目標代理執行所述將所述目標代理放置到所述候選隊列中。
其中,進一步包括:恢復單元,用于將所述目標代理的當前嘗試次數恢復到預先為所述目標代理設置的最大嘗試次數。
其中,進一步包括:第二判斷單元,用于判斷所述當前網頁被下載失敗的次數是否達到預先針對所述當前網頁設置的最大失敗次數,若達到,則放棄對所述當前網頁的下載。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浪潮軟件集團有限公司,未經浪潮軟件集團有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610056419.8/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:經緯旋轉框架
- 下一篇:一種大數據平臺下數據庫與緩存的數據一致性方法及系統





