閱讀857 返回首頁    go gooseeker集搜客


連續動作概念:掌握JS動態網頁信息采集

下麵會從連續動作的適用範圍、動作類型、如何使用連續動作、連續動作的循環執行說明等四個方麵,全麵地介紹連續動作的知識點。

一、連續動作的適用範圍

越來越多的網頁使用了JS動態技術,即網頁信息不是立馬顯示出來的,而是要經過點擊或輸入之類的動作才能瀏覽到想要的信息,例如條件篩選、輸入關鍵詞搜索、滾屏加載、點擊目錄等等,而這類網頁通常是沒有獨立網址的,不能對它直接采集,隻能設置連續動作來實現相應鼠標動作的自動執行,從而加載出想要的信息然後采集下來。

  • 動作前後的網頁地址沒有變化,即想要采集的網頁信息是沒有獨立的網址入口。
  • 需要連續多次的鼠標動作(點擊、輸入、篩選等等)才能瀏覽到想要的網頁信息。


二、連續動作的動作類型

連續動作類型是逐步增加的,截止到V8.1.0版爬蟲,已經實現了10種類型,後續版本還會持續增加新類型。下麵是各個動作類型的使用場景簡介:

1,懸浮:把鼠標移動到網頁上的某些內容上,就會彈出一個窗口,想要采集彈窗裏麵的信息,就要設置懸浮動作。

2,點擊:如果要點擊網頁上的按鈕或者是超鏈接,就要設置點擊動作。

3,雙擊:與點擊動作相似,是連點兩下鼠標。

4,滾屏:對於頁麵很長甚至是加載不到盡頭的瀑布流網頁,想要采集到更多信息,就要設置滾屏動作,盡可能地滾屏加載出更多信息。

5,輸入:想要在搜索框上自動輸入關鍵詞,以獲取到搜索結果的信息,例如在百度上輸入關鍵詞進行搜索。

6,選擇:用於網頁上的下拉菜單的點選,能夠實現從指定選項開始逐個選項的點擊。

7,提交:專門用於點擊提交按鈕,例如百度上輸入關鍵詞後還要點擊搜索按鈕。

8,打碼:集搜客爬蟲與打碼平台對接,把打碼平台返回來的驗證碼自動輸入和提交,適用於需要輸入驗證碼的網頁。

9,回退:就是瀏覽器上的回退按鈕,看了一個網頁,想返回到之前的網頁,就用回退動作。

10,滾輪:前麵有個滾屏,就是滾動網頁右邊的滾動條顯示更多內容。而滾輪是完全模擬鼠標滑輪的動作,鼠標放在網頁上哪個區域,滾輪就作用於哪個區域。


三、如何使用連續動作

連續動作的作用是模擬人在瀏覽網頁時的各種操作,從而加載出想要的網頁信息,最後再進行采集,所以,總體上可以分為兩大操做步驟,第一步是模擬人瀏覽網頁的操作,通過在規則裏設置連續動作來實現;第二步是采集數據,像采集靜態頁麵那樣,直接對想要的信息做采集規則。

關鍵是第一步,要弄清楚操作範圍、設置哪些動作類型、動作的順序以及要做多少個規則。大家可以先在瀏覽器上進行信息瀏覽,把操作範圍以及動作類型和順序整理出來,再做規則設置連續動作。


四、連續動作的循環執行說明

上麵說過了,在連續動作裏隻需要設置操作範圍、動作類型、動作順序,不用管動作執行的循環,因為集搜客爬蟲會根據xpath鎖定的動作對象數量,自動循環執行,這裏的循環是以一個或多個動作類型的組合為單位的,所以,不用糾結在怎樣設置循環上麵。

在《如何把抓到的信息與動作步驟對應起來》一文中,實現了區域兩級目錄的自動點擊然後分類采集,該案例在連續動作裏隻需設置兩個點擊動作,第一個點擊動作是用於點擊一級目錄,通過xpath鎖定每一個大區域(紫色框,共鎖定20個對象),第二個點擊動作是用於點擊二級目錄,通過xpath鎖定每一個子區域(紅色框,共鎖定78個對象),最後,爬蟲采集時就會以這兩個點擊動作為循環單位自動點擊一級、二級目錄,具體的執行過程如下:


Tip:1:如何判斷要做幾個連續動作的規則

關鍵要看網頁結構是否改變,如果動作前後的網頁結構變化了,那就要拆開一個規則,多級規則是通過連續動作裏指定的目標主題名串聯起來的。


Tips2:連續動作與爬蟲路線的區別

連續動作的點擊動作和爬蟲路線的記號線索都可以模擬鼠標的點擊動作,但連續動作實現的效果是在同一個網頁上連續多次的點擊,爬蟲路線實現的效果則是在網頁上做一次性的點擊,通常是用於翻頁點擊。

另外,爬蟲路線的下級線索不是立馬點擊,而是把網址抓下來並傳遞到下級規則,以用於層級采集,適用於網頁上具有獨立網址的超鏈接。如果超鏈接沒有獨立網址,而是一段javascript代碼,比如,onclick=”javascript:void(0)”,這種情況,隻能用連續動作的點擊動作。


若有疑問可以或集搜客爬蟲軟件

最後更新:2017-01-09 14:08:12

  上一篇:go XML文件結構
  下一篇:go 高級教程