首页 > 解决方案 > 无法从“img”标签中提取“src”属性

问题描述

我在电子商务网站上抓取高清图像。这是包含我想要的 url 的 html 块,如开发工具中所示。

<img class="_3togXc _3wp706" alt="" src="https://rukminim1.flixcart.com/image/880/1056/jtn9bww0/t-shirt/5/g/g/m-hm-1001-black-red-helmont-original-imafdfvvr8hqdu65.jpeg?q=50">

但是尝试通过提取 srcresponse.xpath('//img[@class="_3togXc _3wp706"]/@src').extract()会返回一个空列表。

这是网页:https ://www.flipkart.com/mufti-striped-men-henley-neck-blue-t-shirt/p/itmf97tf5musdzhn?pid=TSHF97EQJFKYZNVR&lid=LSTTSHF97EQJFKYZNVRTO8NYI&marketplace=FLIPKART&srno=b_1_2&otracker=nmenu_sub_Men_0_T-Shirts&f =en_gnuFJK6aCYh16bFjfooxjvp8RCgW1Qv5%2FUGcIk2pk%2B0jLtbLFo%2BqPL6Dtf5pUqburiU8mTUCC4lmPqYF651UZQ%3D%3D&ppt=浏览&ppn=浏览&ssid=mjlrz5luxs0000007157055492

请帮忙!谢谢。

标签: pythonhtmlxpathscrapysrc

解决方案


检查响应中的内容。看起来它是在客户端生成的。

此外,您不应该像这样使用 XPath 来选择类,至少contains()对每个类使用(或更复杂的https://stackoverflow.com/a/1604480/964478),或者更好地使用 CSS 选择器(img._3togXc._3wp706)。


推荐阅读