2016-04-25 26 views
2

我想要處理一些xml文件。不幸的是我沒有訪問所有構成所有可能的樹我可以使用xpath(在lxml中)查找在開始時未知的標籤名稱嗎?

的不同元素,這樣的例子,我可能有一個構造

<typeOfBook> 
    <isMystery>True</isMystery> 
</typeofBook> 

很容易的一個文件,但是當我看在這些文件的初始創建過程中使用的清單,我看到「書籍類型」(如「參考靈性」)部分下的類別。鑑於我與神祕的經驗,我嘗試過,我發現,他們實際使用的標籤是isrefspirit寫XPath表達式

我建立在此基礎上

'//typeofbook/isreferencespirituality/text()' 

我的XPath因此正確的XPath是

'//typeofbook/isrefspirit/text()' 

鑑於文件的數量和可能的類別數量我試圖學習的是有一個xpath捕魚工具 - 我想通過我的所有文件運行一次,找到所有類型的書後標籤這樣我就可以正確分類時,返回

文本基本上我想這樣做

運行在所有我的文檔的某些查詢找到以下行*

'//typeofbook/*/' 
+0

'「// typeofbook/*」'將返回typeofbook標籤內的所有標籤。 –

+1

哇在正確的軌道上,但我放棄了它 - 感謝帖子作爲答案,我會信任你。 – PyNEwbie

回答

1

*用作通配符所以只需//typeofbook/*'將獲得typeofbook標記中的所有子元素。

有針對你可能會發現有用未知節點一對夫婦的其他東西:

@* # any attribute 
node() # any node at all 
相關問題