首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >img src=blob:如何下载镜像?

img src=blob:如何下载镜像?
EN

Stack Overflow用户
提问于 2017-04-06 10:47:35
回答 1查看 2.4K关注 0票数 4

我使用Python下载Google Art (如Portrait of Anthony Valabrègue)上的一个网页,其中包含blobs中的图像,如:

代码语言:javascript
运行
复制
<img src="blob:https://www.google.com/c8c0132a-1ab7-453b-844c-0aab6449af69">

如何下载此镜像?使用URL blob:https://www.google.com/c8c0132a-1ab7-453b-844c-0aab6449af69直接下载是行不通的。该图像由6个瓦片组成,它们位于带有XPath的div中

代码语言:javascript
运行
复制
$x('//*[@id="yDmH0d"]/div/div/div[1]/div/div[1]/div[4]/div[11]')

图像存储在blob%s中。

理想情况下,我希望能够下载这样的图像从网页使用scrapy库。我知道如何为常规的urls做这件事,但不是为blob:https

是的,有一个简单的方法可以在这个网页上找到一个小分辨率图像的常规链接。但我想获得更高的分辨率,这就是为什么我需要下载6种不同的瓦片,它们存储在blobs中。

EN

回答 1

Stack Overflow用户

发布于 2017-04-06 20:00:00

我认为你在错误的地方寻找你的形象。

你正在抓取的网站充满了javascript的杂乱,这使得通过dom which找到图片有点困难,所以在这种情况下,你需要挖掘源页面本身。

您可以在<meta>标记中找到您正在查找的此特定图像:

代码语言:javascript
运行
复制
def parse(self, response):
    item = response.xpath('//meta[@property="og:image"]/@content').extract_first()
    #'https://lh5.ggpht.com/-HvgLbwqJ7Yy1iF9imtgsGhVDBDafmvTnDRZSCKl_PNjMT_KXaoNLuO4A7tb4Q'
    yield Request(item, self.parse_image)

def parse_image(self, response):
    with open('image.jpg', 'w') as f:
        f.write(response.body)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43244794

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档