Scrapy:无法使用 css 选择器 attr::img 找到图像

问题描述 投票:0回答:1

我正在尝试抓取此页面上的一些元素:

https://www.liberation.fr/planete/2015/10/26/stupeur-en-argentine-le-candidat-de-kirchner-en-difficulte_1408847/

我想抓取文章中图片的链接。这是 html 的一部分,可以在其中找到图像的链接:


<figure class="lead-art-wrapper"><div><div class="sc-ckMVTt hVOpns"><img src="https://www.liberation.fr/resizer/Kmpp6T1oKcLS4NfCHPYuP-bPGMk=/1024x0/filters:format(jpg):quality(70)/cloudfront-eu-central-1.images.arcpublishing.com/liberation/QGDR2IJDFAWHBV35O7NBAJONJI.jpg" width="1024px" height="0px" class="sc-GVOUr jdlgMc"></div></div><figcaption><p class="ImageMetadata__MetadataParagraph-sc-1gn0vty-0 dkGqa-d image-metadata"><span>Peu après minuit, les premiers résultats négatifs parviennent au Luna Park, stade couvert de Buenos Aires, où sont rassemblés les partisans de la présidente Cristina Kirchner.  </span>(JUAN MABROMATA/AFP)</p></figcaption></figure>

使用 scrapy shell 我无法选择图像的链接:

response.css('div.sc-ckMVTt img::attr(src)')

即使在做:

response.css('img')

我只得到网站的标志。你能告诉我如何抓取图像的网址吗?我需要使用 CSS 选择器,因为我想选择多个页面,而 XPATH 不太方便。

非常感谢,

python scrapy css-selectors
1个回答
0
投票

您的图像由Javascript呈现。您可以检查 HTML 源代码 (Ctrl+U),发现原始 HTML 中不存在上述标记。 不幸的是,Scrapy 无法执行 Javascript,您需要从

Fusion.globalContent
字符串中的类似 JSON 的对象解析图像路径。

© www.soinside.com 2019 - 2024. All rights reserved.