微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Flipkart.com 图像 src 在抓取后发生变化

如何解决Flipkart.com 图像 src 在抓取后发生变化

所以我试图为了纯粹的学习目的而抓取flipcart.com,但我遇到了一个问题,不明白为什么。我试图从此链接中抓取图像 src - https://www.flipkart.com/search?q=sofa & 在我在开发工具中发现 src 是 -

git diff B^ C'

但是当我试图在 scrapy shell 中抓取它时,我得到了不同的 -

<img class="_396cs4 _3exPp9" alt="Muebles Casa Croma Leatherette 3 Seater  Sofa" src="https://rukminim1.flixcart.com/image/612/612/jvtujrk0/sofa-sectional/z/w/h/light-brown-na-colton-letheratte-light-brown-three-seater-sofa-original-imafghzgwdznm33t.jpeg?q=70">

谁能告诉我如何解决这个问题,或者为什么 src 会改变。

解决方法

需要使用selenium来获取数据。图像数据是动态加载的。这里使用scrapy.Selector 和selenium 来提取数据。

from selenium import webdriver
from scrapy.selector import Selector
browser = webdriver.Firefox(executable_path='./geckodriver')
browser.get(url="https://www.flipkart.com/search?q=sofa")

page = browser.page_source
image_data = Selector(text=page)
print(image_data.xpath('//div[@class="CXW8mj _21_khk"]/img/@src').get())

输出

https://rukminim1.flixcart.com/image/612/612/jyeq64w0/sofa-sectional/u/k/b/blue-na-56101502sd00927-godrej-interio-blue-original-imaffpsrybgrhvxb.jpeg?q=70

注意:如果你的系统中没有安装selenium,你需要安装。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。