我试过了;
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迭代它们来刮取底层文本?
答案 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()')