2011-04-25 89 views
3

谷歌,Facebook和其他一些人现在有一个预览链接功能,你可以查看一个网站主页的“屏幕截图”。有什么建议我怎么能做到这一点?Google和Facebook如何实现并创建预览链接功能?

具体而言,我希望能够抓取屏幕截图(iPhone屏幕截图)并将其作为图像(如JPG或PNG)提供。

我想从python做到这一点,如果可能的话。

+1

有趣的问题,如何通过代码截图网页? – dwarfy 2011-04-25 12:01:45

回答

2

我们正在使用的服务Bluga这个功能,这不是太膨胀,是很容易实现。如果你不喜欢那个there are many other services available

+0

谢谢。试用了Bluga,它易于使用,但速度太慢,无法立即使用,因为我现在需要一点时间来实时发言。现在检查替代方案。 – 2011-04-27 01:22:11

+0

我不认为你会发现任何实时,有太多的处理捕捉截图。该服务必须将您的请求放入队列中,屏幕截图的无人机将不得不加载网站,截图并保存并将其发送给您/链接。 – Znarkus 2011-04-27 11:51:18

+0

更新:我最终使用phantomjs来做到这一点。但需要注意以下几点:我们必须通过几个问题来获得合理的渲染时间。这种依赖关系对于极端 - QT&X窗口依赖关系来说是荒谬的。所有的事情都认为截图是完美的,并在本地几分之一秒内渲染。如果有人对细节感兴趣,请给我一条线。 – 2011-05-12 15:34:13

3

为此,您必须运行单独的网络浏览器,然后以所需的格式保存图像。你可以尝试一个像phantomJS这样的无头像web堆栈作为一个独立的进程,并将其输出为图像。

,有几项网络服务,提供诸如WebSnapr

+0

谢谢你。我以为这(幻影)可能是一种尝试的方式,但如果其他人已经完成了这项工作,我会很乐意使用它。 Websnapr看起来不错,但我必须让它适合iPhone的大小。 – 2011-04-27 01:03:56

+0

更新:我最终使用phantomjs来做到这一点。但需要注意以下几点:我们必须通过几个问题来获得合理的渲染时间。这种依赖关系对于极端 - QT&X窗口依赖关系来说是荒谬的。所有的事情都认为截图是完美的,并在本地几分之一秒内渲染。如果有人对细节感兴趣,请给我一条线。 – 2011-05-12 15:35:57