在python中使用lxml我创建了这个xpath语法
htmlPage.xpath("/html/body//a/text()")
它为我提供了所有<a>
- 我想要的某些html范围内的标签。现在我遇到了<a>
- 标签看起来像这样:
<a>This is a sentence with some <italic>italic text</italic>-formatting I want to parse.</a>
xpath返回一个列表,其中有一个元素比我期望的更多。我检查了一下并确认,它将上面提到的<a>
- 标签拆分为两个列表元素,而不是一个。而不是字符串
"This is a sentence with some italic text-formatting I want to parse."
我得到两个字符串
"This is a sentence with some" # and
"-formatting I want to parse."
有没有办法纠正?
答案 0 :(得分:2)
首先获取所有<a>
- 标记
results = htmlPage.xpath("/html/body//a")
然后迭代返回的列表并在列表元素上使用text_content()
for a_tag in results:
print a_tag.text_content() # prints bthe whol string: "This is a sentence with some italic text-formatting I want to parse."