小编典典

使用BeautifulSoup更改元素值将返回空元素

python

from BeautifulSoup import BeautifulStoneSoup

xml_data = """
<doc>
  <test>test</test>
  <foo:bar>Hello world!</foo:bar>
</doc>
"""

soup = BeautifulStoneSoup(xml_data)
print soup.prettify()
make = soup.find('foo:bar')
print make
# prints <foo:bar>Hello world!</foo:bar>

make.contents = ['Top of the world Ma!']
print make
# prints <foo:bar></foo:bar>

如何更改元素的内容(在这种情况下为变量“ make”中的元素)而不丢失内容?如果您可以指出其他可以修改现有xml文档的纯python模块,请告诉我。

PS!BeautifulSoup非常适合HTML和XML的屏幕抓图和解析!


阅读 311

收藏
2021-01-20

共1个答案

小编典典

请查看上的文档replaceWith。这有效:

make.contents[0].replaceWith('Top of the world Ma!')
2021-01-20