0

lxml在 Python 中搞乱了,但似乎无法弄清楚如何使用该cssselect()函数来获取所有div的 class reddit-entry,因为它似乎不喜欢这个-角色。没有其他任何类名都-可以正常工作。

4

2 回答 2

1

这是 lxml.cssselect 中的解析器中的一个错误。我接管了项目的维护,并从 lxml 中提取了它。该错误已在新的 cssselect 中修复:http ://packages.python.org/cssselect/

lxml 2.4 将使用新的 cssselect,但在那之前使用它的方法是:

from cssselect import HTMLTranslator
result = lxml_document.xpath(HTMLTranslator().css_to_xpath('div.reddit-entry'))
于 2012-07-28T08:16:01.420 回答
0

如果您通过 xpath 运行 cssselector 使用的代码,它确实可以工作......

obj.xpath("//div[contains(concat(' ', normalize-space(@class), ' '), ' reddit-entry ')]")
于 2012-06-23T14:04:44.317 回答