使用beautifulsoup 4,如何根据名称编辑值?鉴于我知道name =“foo”(常量和唯一),如何读取值“bar”(运行时未知),并将其更改为新字符串“baz”?
我可以使用soup.find_all(text =“foo”)读取该行,但我无法弄清楚如何方便地读取值,或更改字符串“bar” - > “baz” 的
XML摘录:
<djmacros>
<macro name="foo" value="bar">
<description>foobar</description>
</macro>
</djmacros>
答案 0 :(得分:1)
我没有尝试过,但我怀疑这样的事情可能有用:
foo_element = soup.find('macro', attrs={"name" : "foo"}) # returns the foo element
foo_element['value'] = "baz" # changes the value attribute