使用xpath循环遍历speciifc div中的所有<h2>标记

时间:2016-10-11 17:14:54

标签: python xpath

我正在尝试使用此代码循环使用<h2>在div内的每个id="somediv"标记(获取文本):

for k,div1 in enumerate(tree.xpath('//div[@id="someid"]')):
  print div1.xpath('.//h2['+str(k+1)+']/text()')

但它不起作用。为什么?然而,这有效:

for i in range(5): #let's say there are 5 div's with id="someid" to make things easier
  print tree.xpath('//div[@id="someid"]/div/div[1]/div[2]/h2['+str(i)+']/text()'))

问题在于,我必须提供我不想要的绝对路径.../div/div[1]/div[2]...。我的第一个解决方案看起来不错,但没有产生所需的结果,而是我一次只能从一个<h2>检索所有div="someid"个标签。谁能告诉我我做错了什么?

1 个答案:

答案 0 :(得分:1)

WebMethod将继续搜索树。从属于div的h2文本节点列表只是

.//