我正在嘗試從維基百科國家/地區頁面中抓取人口信息。我遇到的問題是,在我嘗試抓取的節點中沒有涉及人口的信息,相反,人口僅在其之前的節點中被引用。因此,我嘗試使用 Xpath 將表達式移動到下一個節點,但找不到正確的命令。下面是一個 xpath 表達式,它讓我到達我想要抓取的人口數量之前的節點://table[@class='infobox?geography?vcard']//tr[@class?=?'mergedtoprow']//a[contains(@href,"Demographics")]/../..它在表中搜索包含“人口統計”的 href,然后向上兩級找到父母的父母。但問題是標題與我要提取的數字位于不同的節點中,因此我需要可以轉到下一個節點的內容。我已經看到了表達式 /following-sibling::div[1] 但它似乎不適用于我的表達式,我不知道為什么。如果有人能想到一種更直接的方法來查找上述網頁中的節點,那也很好。
1 回答

慕沐林林
TA貢獻2016條經驗 獲得超9個贊
我認為你的問題的一般答案是:“謂詞可以嵌套”。
//table[
@class='infobox geography vcard'
]//tr[
@class = 'mergedtoprow' and .//a[contains(@href, "Demographics")]
]/following-sibling::tr[1]/td/text()[1]
- 1 回答
- 0 關注
- 253 瀏覽
添加回答
舉報
0/150
提交
取消