Home >Development Tools >composer >Share a Composer package for intercepting web pages

Share a Composer package for intercepting web pages

藏色散人
藏色散人forward
2020-12-25 15:55:552650browse

The following tutorial column of composer will share with you a Composer package for intercepting web pages. I hope it will be helpful to friends in need!

Share a Composer package for intercepting web pages

screenshot

Web page screenshot service, used to generate mini program posters. (Mac system is not yet adapted)

Installation

composer require tommy-dai/screenshot

Use

Get started quickly

$screenshot = new \Screenshot\ScreenShot();$screenshot->shot('http://image.baidu.com');

Note: The picture may not appear when you visit it for the first time, and it will not appear later

You can get Baidu pictures without any accidents Web page screenshot

##Optional configuration items
//截图服务端口号
port = 8181;

//超时时间(毫秒)
timeOut = 5000;

//是否解析页面中的JavaScript代码
javascriptEnabled = false;

//图片宽度(单位像素)
width = 750;

//图片高度(单位像素)
height = 1334;

//截图日志文件存放路径(绝对路径)
logPath = '';

Modify the default configuration items

//获取默认配置
$config = new \Screenshot\Config();

//修改默认端口号(修改配置)
$config->setPort(8080);

//修改默认端图片宽度
$config->setWidth(600);

//修改默认端图片高度
$config->setHeight(800);

//开启JavaScript支持(开启后将可以解析页面中js代码,对于js生成的页面可以截取)
$config->setJavascriptEnabled(true);

//用配置文件初始化截图服务(不传$config会走默认配置)
$screenshot = new \Screenshot\ScreenShot($config);

//生成截图服务并截取百度图片
$screenshot->shot('http://image.baidu.com');

Note : Modifying configuration items will not take effect immediately. It will take effect after closing the service and restarting it.

Close steps

    Change to the following code and access it once through the browser, the service will be shut down. Revisiting the above code will take effect.
  • $screenshot = new \Screenshot\ScreenShot();
    
    //关闭截图服务
    $screenshot->stop();
Get screenshot base64 string

$screenshot = new \Screenshot\ScreenShot();

//返回base64的图片,可用于本地保存
$screenshot->getShot();

Special usage

$screenshot = new \Screenshot\ScreenShot();

//开启截图服务
$screenshot->start();

Open the screenshot service after $screenshot->start() What to do

1. You can get the base64 string of the screenshot by visiting 127.0.0.1:8181/?a=image.baid...

2. You can deploy the screenshot service separately by visiting http:/ /ip address:8181/?a=http://image.baidu.com Get the base64 string of the screenshot
3. You can deploy multiple screenshot services and use nginx for load balancing

The above is the detailed content of Share a Composer package for intercepting web pages. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:learnku.com. If there is any infringement, please contact admin@php.cn delete