我試圖使用LXML處理之前和XML內容後,可能有一些非XML垃圾文件,想象一下有人拍攝到的終端緩存和我有這樣的事情:我可以讓lxml忽略根標記之前和之後的非XML內容嗎?
[email protected]: cat /tmp/log.xml
<log>
<foo>...</foo>
<bar>..
...
</bar>
</log>
[email protected]:
如果我手動etree.parse文件名,它扼殺在開始的內容。我可以刪除第一組行,直到找到以'<'開始的行並將其交給etree.parse,然後在關閉內容時扼殺。打開和關閉非xml垃圾可以是任何東西。我可以堅持在文件中使用有效的XML,但我試圖對我的輸入有所寬容。 任何想法?
如果某人在開始或結束前添加了幾乎*有效的XML,該怎麼辦?你在哪裏畫線? – 2013-03-04 18:34:58
我在一個明顯的開放式根標籤之前畫了一些東西,以及關閉那個相同的根標籤之後的東西。對於我試圖解決的情況,這是合理的。我主要期望在之前和之後的shell命令和提示。你認爲這是一個失敗的原因,我應該堅持一個完全有效的XML文檔? – kbyrd 2013-03-04 18:38:20
我在說這是一個失敗的原因,你應該關注有效的XML。 :-)至多你可以從一開始就清除所有不是開頭的'<',所有不是'''的結尾。 – 2013-03-04 18:42:49