我遇到了一个有点复杂的XPath问题。考虑的网页(我使用Imgur和更换一些文字)的一部分,此HTML:XPath选择图像链接 - 仅当img src的父级href链接存在时,否则选择img src链接
<a href="//i.imgur.com/ahreflink.jpg" class="zoom">
<img class="post-image-placeholder" src="//i.imgur.com/imgsrclink.jpg">
</img>
</a>
我首先要搜索的文件中,并找到其对应的src
ES所有img
标签。接下来,我要检查img src
链接是否包含图像文件扩展名(.jpeg,.jpg,.gif,.png)。如果它不包含图片扩展名,请不要抓住它。在这种情况下,它有一个图像扩展名。现在我们要弄清楚我们想要抓取哪个链接。由于parent href
存在,我们应该抓住相应的链接。
所需的结果://i.imgur.com/ahreflink.jpg
但是,现在让我们假设parent href
不存在:
<a name="missing! oh no!">
<img class="post-image-placeholder" src="//i.imgur.com/imgsrclink.jpg">
</img>
</a>
所需的结果://i.imgur.com/imgsrclink.jpg
如何去构建这个XPath?如果它有帮助,我也使用Python(Scrapy)和XPath。所以如果问题需要分离出来,Python也可以使用。
你到目前为止尝试过什么吗? –
我只得到了检查链接图像扩展的部分,但却对如何选择要抓取的链接感到困惑。 – dtgee
您是否想完全使用XPath来获得结果,或者您是否使用了脚本语言,您可以使用某些逻辑来实现? –