kulizh / screenshot-pages
1.1.0
2023-10-21 14:31 UTC
Requires
- chrome-php/chrome: ^1.9
README
这是基于PHP的服务端实现,用于Qurle的网站截图库。
安装
通过Composer安装包
composer require kulizh/screenshot-pages
配置
基本上库使用JSON文件params.json,它放置在附近。但您也可以使用自己的参数化实现。
使用params.json
在使用params.json时,您只需创建该文件即可
{
"path": "./screenshots",
"viewports": [
"1440x900",
"360x900"
],
"format": "png",
"pages": [
"https://kulizh.ru",
"https://qurle.net"
]
}
使用您自己的配置
您可以在useParameters()方法中传递自己的ParametersInterface实现。
use ScreenshotPages\Helpers\Parameters\ParametersInterface; class HardcodeParameters implements ParametersInterface { public function getSaveFolder(): string { return './result/'; } public function getSaveFormat(): string { return 'jpeg'; } public function getPages(): array { return [ 'https://www.wikipedia.org/' ]; } public function getViewports(): array { return [ '1920x1080' ]; } } $capture = new Capture(); $capture->use(new HardcodeParameters);
为了方便起见,您可以扩展抽象类AbstractParameters(该类也实现了接口),参数已在其中预设
use ScreenshotPages\Helpers\Parameters\AbstractParameters; class PresetParameters extends AbstractParameters { } $capture = new Capture(); $capture->use(new PresetParameters);
用法
创建类的实例并选择如何执行脚本。如果您通过命令行运行它,请使用verbose: true以在终端显示结果。当您在项目代码中使用库时,静默模式很好。
在所有准备工作完成后,使用make()方法
use ScreenshotPages\Capture; $capture = new Capture(); $capture->verbose = true; // To see cli output $capture->make();
命令行使用
从版本1.1.0开始,您可以从命令行以详细模式使用库
vendor/bin/capture ./params.json
... 其中./params.json是JSON配置文件的相对路径。