2
我正在使用BS4來解析XML文件並嘗試將其寫回新的XML文件。在使用Beautifulsoup解析時維護XML文件的縮進
輸入文件:
<tag1>
<tag2 attr1="a1"> example text </tag2>
<tag3>
<tag4 attr2="a2"> example text </tag4>
<tag5>
<tag6 attr3="a3"> example text </tag6>
</tag5>
</tag3>
</tag1>
腳本:
soup = BeautifulSoup(open("input.xml"), "xml")
f = open("output.xml", "w")
f.write(soup.encode(formatter='minimal'))
f.close()
輸出:
<tag1>
<tag2 attr1="a1"> example text </tag2>
<tag3>
<tag4 attr2="a2"> example text </tag4>
<tag5>
<tag6 attr3="a3"> example text </tag6>
</tag5>
</tag3>
</tag1>
我想保留IND輸入文件的入口。我嘗試使用美化選項。
輸出,美化:
<tag1>
<tag2 attr1="a1">
example text
</tag2>
<tag3>
<tag4 attr2="a2">
example text
</tag4>
<tag5>
<tag6 attr3="a3">
example text
</tag6>
</tag5>
</tag3>
</tag1>
但是這不是我想要的。我想要維護輸入文件中標籤的確切縮進 。
檢查[這個問題的](http://stackoverflow.com/questions/15509397/custom-indent-width-for-beautifulsoup-prettify)的答案。 – primeape91