一般情況下,我們采集到的網頁數據需要進行二次處理,比如替換關鍵詞、移除空白字符、進一步提取、格式轉換、HTML標簽處理等等。

如何設置?點擊字段的菜單按鈕,選擇數據處理。 然后點擊新建 處理步驟。

爬山虎采集器提供一下幾種處理步驟:

文本替換

對字段內容進行查找并替換為指定的字符,支持正則表達式。 勾選正則表達式后,右側.*按鈕有常見的正則表達式語法菜單。 在替換內容中支持$1 $2這樣的分組替換功能。 dataproc

正則匹配

使用正則表達式對內容進行提取。比如提取一段內容中的數字、日期等數據。默認是從content分組或者第一個分組結果中提取內容,例如,提取數字的表達式就是(\d+) 或者(?<content>\d+) dataproc

  • 多條模式: 勾選多條模式后,如果匹配到多條結果,程序會將結果使用指定的連接符拼接后返回。
  • 前后綴匹配: 通過這個快捷鏈接,我們可以快速生成一個正則表達式前綴文本(?<content>[\s\S]*?)后綴文本,然后我們可以把前綴、后綴文本替換為指定字符。 比如提取百度為您找到相關結果約11,900,000個中的11,900,000,表達式就是結果約(?<content>[\s\S]*?)個。

清除HTML標簽

通過該功能,可以移除掉指定的HTML標簽。 比如去掉A標簽、IMG標簽、DIV標簽等等。

dataproc

添加前后綴

對字段內容添加前后綴,組合出一段新的內容。通常用在拼接網址上,比如,當前字段內容為baidu,我們設置前綴為http://www.,后綴為.com,那么返回結果為:http://www.baidu.com

dataproc

可引用改字段之前的字段值,引用方式{字段名稱}(注意:被引用字段的順序必須在當前字段之前)。

字符轉碼

包含了常見的HTMLEncode,HTMLDecode,UrlEncode,UrlDecode,JSEncode,JSDecode, Base64等轉碼形式。

dataproc

  • ToDate 為新增類型,可以轉換時間戳為指定時間格式,可以從內容中提取去日期,并且格式化。
  • HTMLToUBB 將HTML格式轉換為UBB代碼(一種論壇格式代碼)
  • HTMLToPlainText 將HTML代碼轉換為文本格式,并且保留格式(p、br、li等塊標簽替換為換行)

執行JavaScript

運行一段JavaScript代碼,可以做一些復雜的數據處理,比如運算、字符串操作??梢砸闷渌侄沃?。

執行C#代碼

通過 C# 代碼對當前字段內容進行處理。 函數參考: string Run(string content) ,其中content參數為當前字段的內容,返回值為處理后的結果,字符串類型。

比如 return content.Length.ToString() ,結果是當前字符串的長度。

正文提取

通過正文提取算法,將頁面中的正文和標題自動識別并提取,適用于一般的新聞、文章頁面。 可以選擇提取標題或者正文,以及是否提取A標簽、圖片標簽

字符映射

對字段內容進行批量替換。應用場景,將目標網站的分類、欄目映射為自己網站的分類。 比如把a,b,c 映射為1,2,3。 輸入格式一行一條,查找和替換值之間用英文逗號分隔。

dataproc

格式參考:

a,1
b,2
c,3

HTTP請求

可以構造一個HTTP請求(支持POST,可以引用其他字段值),并將請求的響應作為處理結果。