yebto/screenshot-api
Composer 安装命令:
composer require yebto/screenshot-api
包简介
PHP SDK for the YEB Screenshot API. Capture website screenshots, PDFs, videos, OCR and more.
README 文档
README
PHP SDK for the YEB Screenshot API. Capture website screenshots, PDFs, videos, OCR and more.
Works standalone (plain PHP) or with Laravel (Facade + auto-discovery).
Requirements
- PHP 8.1+
- cURL extension
- YEB API Key (free tier available)
Installation
composer require yebto/screenshot-api
Standalone Usage
use Yebto\ScreenshotAPI\ScreenshotAPI; $api = new ScreenshotAPI(['key' => 'your-api-key']); $result = $api->capture('example');
Laravel Usage
Add your API key to .env:
YEB_KEY_ID=your-api-key
Use via Facade:
use ScreenshotAPI; $result = ScreenshotAPI::capture('example');
Or via dependency injection:
use Yebto\ScreenshotAPI\ScreenshotAPI; public function handle(ScreenshotAPI $api) { $result = $api->capture('example'); }
Publish Config
php artisan vendor:publish --tag=yebto-screenshot-config
Available Methods
| Method | Description |
|---|---|
capture($url) |
Capture a screenshot of a URL |
captureHtml($html) |
Capture a screenshot from HTML content |
capturePdf($url) |
Capture a PDF of a URL |
captureVideo($url) |
Capture a video recording of a URL |
bulk($urls) |
Capture screenshots of multiple URLs |
bulkStatus($job_id) |
Check bulk capture job status |
scheduleCreate($url) |
Create a scheduled screenshot |
scheduleUpdate($schedule_id) |
Update a scheduled screenshot |
scheduleDelete($schedule_id) |
Delete a scheduled screenshot |
scheduleList() |
List all scheduled screenshots |
scheduleRun($schedule_id) |
Run a scheduled screenshot now |
diff($url) |
Create a visual diff between screenshots |
diffStatus($job_id) |
Check diff job status |
status($job_id) |
Check screenshot job status |
download($job_id) |
Download a captured screenshot |
metrics($url) |
Get page performance metrics |
ocr($url) |
Extract text from a screenshot via OCR |
extractHtml($url) |
Extract rendered HTML from a URL |
extractText($url) |
Extract visible text from a URL |
devices() |
List available device presets |
All methods accept an optional $extra array parameter for additional API options.
Error Handling
use Yebto\ApiClient\Exceptions\ApiException; use Yebto\ApiClient\Exceptions\AuthenticationException; use Yebto\ApiClient\Exceptions\RateLimitException; try { $result = $api->capture('example'); } catch (AuthenticationException $e) { // Missing or invalid API key (401) } catch (RateLimitException $e) { // Too many requests (429) } catch (ApiException $e) { echo $e->getMessage(); echo $e->getHttpCode(); }
Free API Access
Register at yeb.to with Google OAuth to get a free API key.
Support
- API Documentation: https://yeb.to/api/screenshot
- Email: support@yeb.to
- Issues: GitHub Issues
License
MIT - NETOX Ltd.
统计信息
- 总下载量: 0
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 5
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2026-03-06