urlbox/screenshots

使用urlbox轻松从URL生成网站缩略图截图

3.0.1 2024-04-30 11:29 UTC

This package is auto-updated.

Last update: 2024-08-27 09:46:38 UTC


README

使用Urlbox.io在PHP中捕获任何网站的高度精确网页截图

此软件包使用Urlbox.io截图服务来生成网站截图。

安装

此软件包可以通过Composer安装。

composer require urlbox/screenshots

Laravel配置

当使用Laravel时,如果您使用的是v5.5之前的版本,您需要手动包含服务提供者

// app/config/app.php

'providers' => [
    // ...
    'Urlbox\Screenshots\UrlboxProvider'
];

设置您的API密钥

// config/services.php

'urlbox' => [
    'key'    => env('URLBOX_KEY'),
    'secret' => env('URLBOX_SECRET'),
    'webhook_secret' => env('URLBOX_WEBHOOK_SECRET'),
];

并在您的.env文件中

# URLBOX
URLBOX_KEY=YOUR_URLBOX_KEY
URLBOX_SECRET=YOUR_URLBOX_SECRET
URLBOX_WEBHOOK_SECRET=YOUR_URLBOX_WEBHOOK_SECRET

您可以在此处找到您的API凭据和Webhook密钥

用法

您需要一个Urlbox账户来使用此软件包。请在此处注册,并在登录后从Urlbox仪表板获取API密钥和密钥。

以下是生成Urlbox截图URL的示例调用

    use Urlbox\Screenshots\Urlbox;
    $urlbox = Urlbox::fromCredentials( 'API_KEY', 'API_SECRET' );
    
    $options = [
        // only required option is a url:
        'url' => 'example.com',
        
        // specify any other options to augment the screenshot...
        'width' => 1280,
        'height' => 1024,
    ];
    
    // Create the Urlbox URL
    $urlboxUrl = $urlbox->generateSignedUrl( $options );
    // $urlboxUrl is now 'https://api.urlbox.io/v1/API_KEY/TOKEN/png?url=example.com'
    
    // Generate a screenshot by loading the Urlbox URL in an img tag:
    echo '<img src="' . $urlboxUrl . '" alt="Test screenshot generated by Urlbox">'

如果您正在使用Laravel并已设置服务提供者,您可以使用提供的Facade

use Urlbox\Screenshots\Facades\Urlbox;

$options = [ 'url' => 'example.com' ];
$urlboxUrl = Urlbox::generateUrl( $options );
// $urlboxUrl is now 'https://api.urlbox.io/v1/API_KEY/TOKEN/png?url=example.com'

您现在可以通过将结果($urlboxUrl)放在一个<img/>标签内作为src参数来使用该结果。

当您加载图片时,将返回example.com的截图。

选项

您可以在文档中找到所有可用选项的完整列表。以下是常用选项的列表

其他实现

贡献

我们欢迎拉取请求。

安全性

如果您发现任何安全相关的问题,请通过电子邮件services@urlbox.io而不是使用问题跟踪器。

关于Urlbox

Urlbox是一个高级截图即服务API。它允许您渲染网页的精确截图,并在您想要的位置显示它们。Urlbox.io.

许可证

MIT许可证(MIT)。