【发布时间】:2018-03-25 11:04:47
【问题描述】:
我尝试创建两个xpaths 以从某些元素中获取两个项目。但是,第一个做得很好,但在第二个的情况下:我不知道。对此的任何帮助将不胜感激。
<div class="mdif">
<ul>
<li><b>Genre:</b>Thriller</li>
<li><b>Quality:</b></li>1080p
</ul>
</div>
我试过这样:
from lxml.html import fromstring
content="""
<div class="mdif">
<ul>
<li><b>Genre:</b>Thriller</li>
<li><b>Quality:</b></li>1080p
</ul>
</div>
"""
root = fromstring(content)
for items in root.xpath("//div[@class='mdif']"):
genre = items.xpath(".//li/text()")[0]
# quality = items.xpath(".//li/text()")[0]
print(genre,quality)
当我运行上面的脚本时,它会获取genre,但如果是quality,我会卡住。我想得到的输出是1080p。
【问题讨论】:
-
您共享两个 HTML 源示例,其中质量值属于不同的父节点。你想要一个解决方案来匹配这两种情况吗?
-
修正了差异,先生。
标签: python python-3.x xpath web-scraping lxml