【发布时间】:2012-07-24 03:03:06
【问题描述】:
我必须解析一些 HTML。但是,它的格式不正确。您可以看到文本“Cowabunga”不包含在任何 HTML 元素中。
from lxml.html import fromstring
from lxml.cssselect import CSSSelector
stuff = '''<p>
<span id="alpha" style="color: #999; "></span>
<span id="bravo" style="color: #999; "></span>
Cowabunga
</p>'''
l = CSSSelector ("p")
e = l(fromstring(stuff))
print e[0].text
如何使用 lxml/Python 编写 CSSSelector 来定位此文本?
谢谢
编辑:上面的代码给出了空白输出——只有一行空格——我需要捕捉“Cowabunga”
【问题讨论】:
-
HTML 没有格式错误 - “Cowabunga”在
p元素中,紧跟在spans 之后,但不在其中。 -
是的,格式错误可能不是这里的规范术语 - Steven 的“混合内容”似乎是一个更好的术语
标签: python css-selectors lxml