В наши дни самым популярным (и очень простым) вариантом является ElementTree API , который был включен в стандартную библиотеку с Python 2.5.
Доступные опции для которые являются:
Вот пример того, как сгенерировать ваш примерный документ с помощью in-stdlib cElementTree:
import xml.etree.cElementTree as ET
root = ET.Element("root")
doc = ET.SubElement(root, "doc")
ET.SubElement(doc, "field1", name="blah").text = "some value1"
ET.SubElement(doc, "field2", name="asdfasd").text = "some vlaue2"
tree = ET.ElementTree(root)
tree.write("filename.xml")
Я протестировал его, и он работает, но я предполагаю, что пробелы не значимы. Если вам нужен отпечаток «prettyprint», дайте мне знать, и я посмотрю, как это сделать. (Это может быть специфичный для LXML вариант. Я не использую реализацию stdlib много)
Для дальнейшего чтения здесь приведены некоторые полезные ссылки:
Как последнее замечание, либо cElementTree, либо LXML должны быть достаточно быстрыми для всех ваших потребностей (оба оптимизированы C-кодом ), но в случае, когда вы находитесь в ситуации, когда вам нужно выжать каждый последний бит производительности, тесты на сайте LXML показывают, что:
Только на основе кода, который мы видим в вашем посте.
document.querySelectorAll('th')[1].style.color = "blue";
Я нахожу 2-й тег TH и устанавливаю цвет таким образом. Вы также можете установить значения таким же образом.
document.querySelectorAll('th')[1].innerText = "start";
or
document.querySelectorAll('th')[1].innerHTML = "start";