Я пытаюсь запросить с помощью XPath HTML-документ, проанализированный с помощью lxml. Документ представляет собой прямую html-загрузку страницы о Пластик в Википедии . Затем я анализирую это с помощью lxml, отключая замену сущностей, чтобы избежать ошибки с & & reg '
from lxml import etree
root = etree.parse("plastic.html",etree.XMLParser(resolve_entities=False))
Затем я получаю URL-адрес пространства имен
htmltag = root.iter().next()
nsurl = htmltag.nsmap.values()[0]
Теперь я хотел бы использовать запросы xpath для «root» или «htmltag», но я не могу это сделать. Я пробовал разные способы, но мне кажется наиболее правильной следующая форма, которая в любом случае выдает ошибки.
root.xpath('//ns:body',namespace={'ns',nsurl})
И вот что я получаю
XPathResultError: Unknown return type: dict
Я выполняю команды в консоли IPython, но не думаю, что это может быть проблемой. Что я делаю не так?