下面由composer教程欄目帶大家分享一個(gè)截取網(wǎng)頁的Composer包,希望對(duì)需要的朋友有所幫助!
screenshot
網(wǎng)頁截圖服務(wù),用于生成小程序海報(bào)。(mac系統(tǒng)暫未適配)
安裝
composer require tommy-dai/screenshot
使用
快速上手
$screenshot = new ScreenshotScreenShot();$screenshot->shot('http://image.baidu.com');
注意:第一次訪問圖片有可能不出來,后面就不會(huì)出現(xiàn)了
不出意外就可以獲得百度圖片的網(wǎng)頁截圖
可選配置項(xiàng)
//截圖服務(wù)端口號(hào) port = 8181; //超時(shí)時(shí)間(毫秒) timeOut = 5000; //是否解析頁面中的JavaScript代碼 javascriptEnabled = false; //圖片寬度(單位像素) width = 750; //圖片高度(單位像素) height = 1334; //截圖日志文件存放路徑(絕對(duì)路徑) logPath = '';
修改默認(rèn)配置項(xiàng)
//獲取默認(rèn)配置 $config = new ScreenshotConfig(); //修改默認(rèn)端口號(hào)(修改配置) $config->setPort(8080); //修改默認(rèn)端圖片寬度 $config->setWidth(600); //修改默認(rèn)端圖片高度 $config->setHeight(800); //開啟JavaScript支持(開啟后將可以解析頁面中js代碼,對(duì)于js生成的頁面可以截取) $config->setJavascriptEnabled(true); //用配置文件初始化截圖服務(wù)(不傳$config會(huì)走默認(rèn)配置) $screenshot = new ScreenshotScreenShot($config); //生成截圖服務(wù)并截取百度圖片 $screenshot->shot('http://image.baidu.com');
注意:修改配置項(xiàng)不會(huì)立即生效,關(guān)閉服務(wù)重新開啟后生效。
關(guān)閉步驟
- 改為下面代碼然后通過瀏覽器訪問一次,服務(wù)就會(huì)關(guān)閉。重新訪問上面的代碼就生效了。
$screenshot = new ScreenshotScreenShot(); //關(guān)閉截圖服務(wù) $screenshot->stop();
獲取截圖base64字符串
$screenshot = new ScreenshotScreenShot(); //返回base64的圖片,可用于本地保存 $screenshot->getShot();
特殊用法
$screenshot = new ScreenshotScreenShot(); //開啟截圖服務(wù) $screenshot->start();
開啟截圖服務(wù) $screenshot->start() 之后能干什么
1. 可以通過訪問 127.0.0.1:8181/?a=image.baid… 獲取截圖的 base64 字符串
2. 可以把截圖服務(wù)單獨(dú)部署,通過訪問 http://ip地址:8181/?a=http://image.baidu.com 獲取截圖的 base64 字符串
3. 可以部署多臺(tái)截圖服務(wù)用nginx做負(fù)載均衡