[發明專利]基于xpath的數據采集方法、電子設備及存儲介質有效
| 申請號: | 202011265720.2 | 申請日: | 2020-11-13 |
| 公開(公告)號: | CN112099778B | 公開(公告)日: | 2021-02-02 |
| 發明(設計)人: | 宋巖強;李青龍 | 申請(專利權)人: | 北京智慧星光信息技術有限公司 |
| 主分類號: | G06F8/30 | 分類號: | G06F8/30;G06F16/951 |
| 代理公司: | 北京智宇正信知識產權代理事務所(普通合伙) 11876 | 代理人: | 李明卓 |
| 地址: | 100080 北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 xpath 數據 采集 方法 電子設備 存儲 介質 | ||
本發明公開了一種基于xpath的數據采集方法、系統、電子設備及存儲介質,該方法對列表頁點擊元素的xpath路徑進行合并,提取共同路徑,得到列表頁合并路徑;根據列表頁合并路徑得到與該合并路徑具有相同路徑的列表,生成列表頁鏈接集合;進入一個鏈接所對應的詳情頁中,根據詳情頁的頁面采集對象確定采集模式,包括分組采集和不分組采集模式;根據詳情頁點擊元素的xpath路徑通過文本提取的方式進行文本信息的提取,得到詳情頁點擊元素所對應的文本信息;根據詳情頁點擊元素xpath路徑和所對應的文本信息自動生成采集代碼,分別進入列表頁鏈接集合中的每一個鏈接進行數據采集,這樣便完成了列表頁中所有鏈接的數據采集,無需人工編寫采集代碼,實現了自動采集數據。
技術領域
本發明涉及數據采集技術領域,具體涉及到一種基于xpath的數據采集方法、系統、電子設備及存儲介質。
背景技術
網頁數據采集一般是依靠技術人員根據客戶的采集需求,分析網頁的組成結構,使用firebug或者瀏覽器自帶xpath提取工具,或者分析dom結構等來定位采集對象元素,然后依據一定的采集框架,編寫對應的采集程序,爬蟲代碼無法自動編程及調用。
發明內容
有鑒于此,本發明實施例提供了一種基于xpath的數據采集方法、系統、電子設備及存儲介質,以解決現有技術中瀏覽器爬蟲代碼無法自動編程及調用的問題。
為此,本發明實施例提供了如下技術方案:
根據第一方面,本發明實施例提供了一種基于xpath的數據采集方法,包括:接收列表頁中的至少兩個列表頁點擊事件,得到與所述列表頁點擊事件相對應的列表頁點擊元素的xpath路徑;對所述列表頁點擊元素的xpath路徑進行合并,得到列表頁合并路徑,所述列表頁合并路徑是從父級節點向下直至第一個元素名相同且位置不同的葉子節點,并去掉所述葉子節點的位置信息后得到的xpath路徑;在所述列表頁中查找與所述列表頁合并路徑具有相同路徑的列表,生成列表頁鏈接集合;進入所述列表頁鏈接集合中的任意一個鏈接,打開相應的詳情頁,根據所述詳情頁的頁面采集對象確定采集模式,其中,所述采集模式是預先設定的,包括分組采集和不分組采集;若所述采集模式為不分組模式,則所述詳情頁為詳細頁面,接收詳情頁點擊元素的xpath路徑;根據詳情頁點擊元素的xpath路徑,通過文本提取的方式提取詳情頁點擊元素所對應的文本信息;根據所述詳情頁點擊元素xpath路徑和所對應的文本信息對所述列表頁鏈接集合中的每一個鏈接分別進行數據采集。
可選地,還包括:若所述采集模式為分組模式,則所述詳情頁包含多個詳情頁分組節點,接收詳情頁分組節點點擊元素的xpath路徑;根據詳情頁分組節點點擊元素的xpath路徑,得到詳情頁分組節點中與詳情頁分組節點點擊元素相似的所有元素的xpath路徑,生成詳情頁分組節點集合;對詳情頁分組節點集合中任意一個詳情頁分組節點中的點擊元素的xpath路徑進行分組合并,得到詳情頁分組節點xpath路徑,所述詳情頁分組節點xpath路徑包含用于定位詳情頁分組節點的分組標記,所述分組標記位于組內點擊元素的父節點元素所在位置的后面且緊鄰所述父節點元素;進入詳情頁分組節點集合中任意一個節點,打開相應的詳情頁分組節點,接收詳情頁點擊元素的xpath路徑;根據詳情頁點擊元素的xpath路徑,通過文本提取的方式提取所述詳情頁點擊元素所對應的文本信息;根據所述詳情頁點擊元素的xpath路徑和所對應的文本信息對所述詳情頁分組節點集合中每一個詳情頁分組節點分別進行數據分組采集;根據詳情頁分組節點點擊元素的xpath路徑,對所述列表頁鏈接集合中的每一個鏈接分別進行數據采集。
可選地,對所述列表頁點擊元素的xpath路徑進行合并的步驟中,包括:對列表頁點擊元素的xpath路徑的各級節點的節點類型進行逐一比較;若節點類型比較結果不一致,則終止合并;若節點類型比較結果一致,則對各級節點的節點名進行逐一比較;若節點名比較結果一致,則終止合并;若節點名比較結果不一致,則從父級節點向下查找到第一個元素名相同且位置不同的葉子節點,去掉所述葉子節點的位置信息,得到列表頁合并路徑。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京智慧星光信息技術有限公司,未經北京智慧星光信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011265720.2/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





