我有一个简单的问题,我想使用python更新/修改xml节点的内容。我正在使用python 3.6版本。
我想编写一个python脚本,它将状态节点的内容修改为“开”,而directoryName节点的修改为“用户/
<main>
<status>off</status>
<directoryName>nothing</directoryName>
</main>
答案 0 :(得分:0)
我得到了答案。我忘了写完
xmlHandler = "System_Settings/System_controller.xml"
xmlDom=ElementTree.parse(xmlHandler)
xmlDom.find("status").text = "on"
print(xmlDom.find("status").text)
xmlDom.write(xmlHandler)
答案 1 :(得分:0)
如果您有能力安装其他软件包,请查看BeautifulSoup。它使解析html和xml非常简单。
import bs4
xml = """
<main>
<status>off</status>
<directoryName>nothing</directoryName>
</main>"""
soup = bs4.BeautifulSoup(xml, "xml")
soup.status.string="on"
print(soup.prettify())
答案 2 :(得分:0)
使用lxml库(BeautifulSoup也使用):
10.97
然后使用from lxml import etree
node = etree.XML("""
<main>
<status>off</status>
<directoryName>nothing</directoryName>
</main>""")
status = "On"
status_node = node.xpath("/main/status")[0]
status_node.text = status
,您将得到:
print(etree.tounicode(node))