【问题标题】:How might I obtain a Snapshot or Thumbnail of a web page using PHP?如何使用 PHP 获取网页的快照或缩略图?
【发布时间】:2010-10-01 10:12:57
【问题描述】:

我需要创建快照/缩略图/站点预览 a-site.com。

thumbshot.org 之类的网站可以满足我的需求。但是我不想使用外部服务,也不想依赖其他人来完成我的项目(如果他们关闭网站会怎样?)

出于这个原因,我正在寻找一些项目让我这样做。

有什么想法吗?

【问题讨论】:

    标签: php screenshot webpage thumbnails


    【解决方案1】:

    在windows上你可以使用GD的imagegrabwindow()函数。

    编辑:帮助页面实际上向您展示了如何从 IE 中获取屏幕截图。

    【讨论】:

    • 谢谢。至少现在我知道去哪里了。我不知道那个功能。我将尝试制作一个脚本来生成快照并自动通过 tftp
    【解决方案2】:

    PHP 库中没有任何东西可以执行此操作 - 您正在考虑设置一个外部应用程序(带有队列)来获取图像,尽管您当然可以使用 PHP 将项目添加到队列中。

    GD 中有几个 Windows 函数可以截取计算机的屏幕截图(网络服务器 - 不是客户端),所以也许您可以用 PHP 编写一个脚本来执行此操作。

    编辑:正在考虑这些:imagegrabscreenimagegrabwindow。但是,我不确定他们会做您想做的事情(即使在全屏模式下,Firefox 的屏幕顶部也有蓝条 - 不确定其他浏览器)。但是,如果您有兴趣,请Pierre has something 了解这些功能。

    我建议用另一种语言编写一个应用程序(我假设 .NET 有一些东西)来为您执行此操作。 编辑: This page 告诉你如何在 C# 中做到这一点

    【讨论】:

      【解决方案3】:

      在这种情况下,PHP 不会为您做太多事情。您需要一个完整的 (X)HTML 渲染引擎,支持 CSS,也可能支持 JavaScript。

      那个,或者使用某种可以启动真正浏览器的古怪脚本,然后从中截取屏幕截图。无论哪种方式,PHP 都可能不是操作部分的正确工具。

      【讨论】:

        【解决方案4】:

        有一个 Firefox 扩展程序可以将您正在查看的网页转换为图像:

        http://www.screengrab.org/

        http://addons.mozilla.org/en-US/firefox/addon/1146

        如果您愿意发挥创意,可能会遇到问题。

        【讨论】:

          【解决方案5】:

          谢谢大家。 我找到了一个伪解决方案(使用 dcom + imagegrabscreen + wamp)。 我需要用gd调整final.png的大小,因为png等于客户端的分辨率(在我家,是1650 * 1280的图片)。 当我结束这个时,我将发布一个 .zip 文件以供下载 再次感谢 (但如果有人有更好的想法,我很高兴看到)

          PS:对不起我的英语

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2012-11-11
            • 2013-03-08
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-07-03
            • 1970-01-01
            相关资源
            最近更新 更多