2016-02-09 61 views
0

如果這聽起來很原始,那麼稍微領先我自己吧。使用xpath快速提取值

基本上我希望能夠從多個網頁中的特定xpath中提取值。這些將是產品頁面,這些頁面都將具有針對此特定xpath的值。

E.G

//*[@id="orb-modules"]/div[1]/section[3]/div/div[1]/a/div[2]/div/h2/span 

我能夠通過使用Chrome控制檯和$ x命令來查找值(然而,這返回整個元素,而不是僅僅是文本值)。

目標是在點擊多個網頁時快速選擇和複製此值,而無需每次在Chrome控制檯中執行相同的命令。

任何想法非常感謝!

+1

[xmllint(HTTP ://xmlsoft.org/xmllint.html)及其' - xpath'選項? – choroba

回答

0

您還可以創建與此網址書籤,任何標題:如果你試圖打開這個書籤,而相關頁面上,你會被驚動:)

javascript:alert(document.evaluate("//*[@id="orb-modules"]/div[1]/section[3]/div/div[1]/a/div[2]/div/h2/span", document, null, 0, null).iterateNext().textContent) 

+0

這真是太棒了!簡單!此外,我意識到你可以直接從警報框中複製,甚至更好!再次感謝:) –

+0

對不起,請問另一個問題,我將如何返回超過1個值?即有多個跨度,我想要所有的值? –

+0

@JimmySumpter javascript:x = document.evaluate(「// * [@ id =」orb-modules「]/div [1]/section [3]/div/div [1]/a/div [2]/div/h2/span「,document,null,0,null); while(n = x.iterateNext()){alert(n.textContent)}' 如果你需要它更花哨,有時間去選擇一些編程 – alamar

0

既然這是編程社區,我會推薦你​​使用Java + TagSoup庫。在那裏你可以閱讀網頁,在它們上執行xpath,寫結果(某處)。

我還沒有準備好命名處理「wild」HTML的命令行工具。