urlbox / screenshots
使用urlbox轻松从URL生成网站缩略图截图
3.0.1
2024-04-30 11:29 UTC
Requires
- php: ^7.4|^8.0
- ext-json: *
- guzzlehttp/guzzle: ^7.5.0
Requires (Dev)
- mockery/mockery: ^1.5
- phpunit/php-code-coverage: ^9.2.18
- phpunit/phpunit: ^9.5.26
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)。