gpt4 book ai didi

python - 仅使用 python、html 下载 amazon.co.uk 网页,就像 firebug 看到的那样

转载 作者:行者123 更新时间:2023-12-01 06:02:46 25 4
gpt4 key购买 nike

我注意到使用 urllib 下载网页:

http://www.amazon.co.uk/Darkness-II-Limited-PC-DVD/dp/B005ULLEX6

我使用 urlopen( url ).read() 返回的内容与 firebug 看到的不同。

示例:

如果你将firebug指向页面的图像区域,它会告诉你存在一个div id="prodImageCell",但是当查看python打开的内容时,没有这样的东西,因此beautifulsoup没有没有找到任何东西。

这是因为图像是使用 JavaScript 生成的吗?

问题:

如果是这样,有没有一种方法可以使用 urllib 下载与 firebug 看到的几乎完全相同的东西(而不是使用像 Selenium 这样的东西)。

我正在尝试以编程方式获取其中一张图像的源网址,这里的示例是带有 prodImageCell 的 div 具有 src=http://ecx.images-amazon.com/images/I/51uPDvJGS3L。AA300 .jpg 这确实是图像的 url。

答案:

无法正确回答,因为我没有声誉:(

感谢 @huelbois 为我指明了正确的方向,找到了解决方案,需要使用用户代理 header 。

之前

>>> import urllib2
>>> import re
>>> site = urllib2.urlopen('http://www.amazon.co.uk/\
Darkness-II-Limited-PC-DVD/dp/B005ULLEX6').read()
>>> re.search( 'prodImageCell', site )
>>>

之后

>>> user_agent = "Mozilla/5.0 (Windows NT 5.1; rv:7.0.1) Gecko/20100101\
Firefox/7.0.1"
>>> headers = {'User-Agent':user_agent}
>>> req = urllib2.Request(url=url,headers=headers)
>>> site = urllib2.urlopen(req).read()
>>> re.search( 'prodImageCell', site )
<_sre.SRE_Match object at 0x01487DB0>

万岁!

最佳答案

刚刚使用 wget 对其进行了测试(将像 urrlib 一样工作)。您必须包含 User-Agent header 才能获取请求的部分:

wget -O- --header='用户代理:Mozilla/5.0(Windows NT 6.1;rv:9.0.1)Gecko/20100101 Firefox/9.0.1' http://www.amazon.co.uk/Darkness-II-Limited-PC-DVD/dp/B005ULLEX6

返回包含请求部分的 html 页面。

哎呀:刚刚看到你按照我之前的建议成功了。太棒了!

关于python - 仅使用 python、html 下载 amazon.co.uk 网页,就像 firebug 看到的那样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9413131/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com