必须有一种更简单的方法来实现这一点。我需要一些来自大量html文档的文本。在我的测试中,找到它的最可靠的方法是在div元素的text_content中查找特定的单词。如果我想检查具有我的文本的特定元素,我已经列举了我的div元素列表,并使用具有我的文本的索引,然后通过对索引进行操作来指定前一个元素。但我相信肯定有更好的办法。我似乎无法弄清楚。有没有一种方法可以在Python中为lxml指定一个固定(或可变)数量的元素
如果没有明确
for pair in enumerate(list_of_elements):
if 'the string' in pair[1].text_content():
thelocation=pair[0]
the_other_text=list_of_elements[thelocation-9].text_content()
或
theitem.getprevious().getprevious().getprevious().getprevious().getprevious().getprevious().getprevious().getprevious().getprevious().text_content()
但是我是一个初学者,这对我有什么好处 - 我是使用html。我开始使用mytree = fromstring(the document),然后list_of_elements = mytree.cssselect('div') – PyNEwbie 2010-03-02 22:34:57
@PyNEwbie:上面的xpath表达式只是一个例子,它应该像'elements [-1] .xpath(“之前的那样-sibling :: div [9]“)'在你的情况。 – jfs 2010-03-02 22:59:55
我已经添加了组合的xpath表达式 – jfs 2010-03-02 23:23:34