在div中找到'p'标签的数量并迭代它们以使用python xpath刮取底层文本

时间:2013-04-09 11:38:06

标签: python xpath

我试过了;

no_of_p_tags = 10 # I'm assuming this. Yet to figure out how to find this.
for x in range(1,no_of_p_tags + 1)
    test = content.xpath('//*[@id="ciHomeContentlhs"]/div[4]/div[2]/div[1]/p[x]/span/text()')
    print test

(1)如何在div中找到'p'标签的数量,以及(2)使用python xpath迭代它们来刮取底层文本?

1 个答案:

答案 0 :(得分:2)

选择p代码而不是文字内容;使用p[span]我们只选择p个符号作为直接子项的span个标记:

ptags_with_span = content.xpath('//*[@id="ciHomeContentlhs"]/div[4]/div[2]/div[1]/p[span]')
no_of_p_tags = len(ptags_with_span)
for ptag in ptags_with_span:
    print ptag.xpath('./span/text()')