如何在beautifulsoup中删除xml标头?

时间:2016-04-08 15:44:12

标签: python beautifulsoup

我已经导入并修改了一些xml,但是当我使用test.prettify()写出我的xml时。它改变了

中xml的顶行
<?xml version="1.0"?>

<?xml version="1.0" encoding="utf-8"?>

我不想要这种改变。我怎样才能保持第一行不变?最简单的方法是什么?

如果重要,我正在使用xml解析器。

soup = BeautifulSoup(r.text,'xml')

2 个答案:

答案 0 :(得分:0)

我确定使用BeautifulSoup的内置插件更优雅的方式来做到这一点,但根据您的评论,我会给你&#34;剥离它出&#34;版本:

xml_string = '<?xml version="1.0" encoding="utf-8"?>'
print xml_string[:xml_string.find("encoding")-1] + "?>"

这通常足以从头部中删除任何编码(不仅仅是utf-8)。

答案 1 :(得分:0)

您可以找到xml并使用replaceWith()将其替换为您想要的值。