kettle+jsoup解析網頁url鏈接

用途

本文介紹如何使用kettle,遍歷web頁面中的url鏈接,並輸出到文本文檔。

技術

kettle
javascript
jsoup-1.11.3.jar

轉換文件步驟

在這裏插入圖片描述

生成記錄

此步驟用於設置需要訪問的web地址,以sina爲例:
在這裏插入圖片描述

JavaScript代碼

在這裏插入圖片描述

源碼如下:

var Jsoup = org.jsoup.Jsoup;
var Document = org.jsoup.nodes.Document;
var Element = org.jsoup.nodes.Element;
var Elements = org.jsoup.select.Elements;
function parseLinks(){
	writeToLog("開始解析");
	var doc = Jsoup.connect(url).get();
	var els = doc.select("div ul li");
	writeToLog("行數:"+els.size());
	for (var i=0;i<els.size();i++) {
		var r = els.get(i);
        //輸出行處理
		var newRow = createRowCopy(getOutputRowMeta().size());
		var rowIndex = getInputRowMeta().size();
		// 獲取文件鏈接地址
		var link=r.select("a").attr("href");
		var title=r.select("a").text();
		newRow[rowIndex++]=i + "\t"+title + "\t" + link;
		//輸出行
		putRow(newRow);
	}
}
writeToLog("解析完成");
parseLinks();

過濾記錄

過濾輸出的內容,需要包含http協議:
在這裏插入圖片描述

文本文件輸出

將結果輸出到腳本的當前目錄:
在這裏插入圖片描述
輸出字段爲:newRow
在這裏插入圖片描述

寫日誌

此步驟保留爲空,則默認輸出全部內容:
在這裏插入圖片描述

輸出結果

在這裏插入圖片描述

發佈了244 篇原創文章 · 獲贊 29 · 訪問量 24萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章