无法使用lxml将html元素连接到某个标签

时间:2018-12-07 11:58:38

标签: python python-3.x xpath web-scraping lxml

我创建了一个xpath表达式,以从某些html元素中到达a标签。问题是我无法在控制台中打印它。

我希望得到的是使用lxml库连接到标签a的相关html元素。

这是我的尝试:

from lxml.html import fromstring

htmlcontent = """
<div class="post-taglist">
    <div class="grid">
        <a href="/questions/tagged/python"></a> 
    </div>
</div>
"""
root = fromstring(htmlcontent)
item = root.xpath("//*[@class='grid']/a")[0]
print(item)

我想得到的输出:

<a href="/questions/tagged/python"></a>

我该怎么做?我使用许多搜索词在Google上进行了搜索,但找不到该问题的直接答案。

1 个答案:

答案 0 :(得分:1)

尝试根据docs进行关注:

from lxml.html import fromstring, tostring

htmlcontent = """
<div class="post-taglist">
    <div class="grid">
        <a href="/questions/tagged/python"></a> 
    </div>
</div>
"""

root = fromstring(htmlcontent)
item = root.xpath("//*[@class='grid']/a")[0]

print(tostring(item).strip())

结果为:

<a href="/questions/tagged/python"></a>