使用短划线(' - ')搜索班级名称

时间:2012-06-23 13:10:23

标签: python python-2.7 lxml canonical-quickly

我正在使用Python中的lxml,但似乎无法弄清楚如何使用cssselect()函数来获取类{div的所有reddit-entry 1}},因为它似乎不喜欢-字符。没有-的任何其他类名都可以正常工作。

2 个答案:

答案 0 :(得分: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'))

答案 1 :(得分:0)

如果你运行cssselector通过xpath使用的代码,它确实有用......

obj.xpath("//div[contains(concat(' ', normalize-space(@class), ' '), ' reddit-entry ')]")