当前位置:首页 > 编程笔记 > 正文
已解决

phantomjs插件---实现通过链接生成网页截图

来自网友在路上 176876提问 提问时间:2023-09-19 16:44:35阅读次数: 76

最佳答案 问答题库768位专家为你答疑解惑

Phantomjs | PhantomJS


 

  • 配置要求
windows下,安装完成phantomJS
设置phantomjs环境变量【也可直接使用phantomjs目录下的执行文件】
直接通过访问php文件执行/通过cmd命令行执行【phantomjs phantom_script.js】 linux下,安装完成phantomJS
设置phantomjs环境变量
直接命令行执行phantom_script.js即可【phantomjs phantom_script.js】 

  • phantom.php
<?php
// 引入并执行 PhantomJS 脚本
$phantomScript = './phantom_script.js';
$command = 'phantomjs ' . $phantomScript;
$output = shell_exec($command);echo 'Screenshot saved at: ' . trim($output);
  • phantom_script.js
var page = require('webpage').create();
page.viewportSize = { width: 900, height: 600 };var url = 'https://www.kancloud.cn/manual/thinkphp6_0/1037479';  // 替换为您的URLvar timestamp = new Date().getTime();
var savePath = './phantomimg/'+timestamp+'.png';  // 保存截图的路径function takeScreenshot() {page.open(url, function(status) {if (status === 'success') {// 在页面加载完成后,等待一段时间以确保动态数据(如echarts 图表)渲染完全setTimeout(function() {page.render(savePath);console.log(savePath);phantom.exit();}, 2000);  // 设置等待时间,单位为毫秒(根据网页数据加载时间参考等待时间)} else {console.log('Unable to load the page.');phantom.exit();}});
}takeScreenshot()

 

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"phantomjs插件---实现通过链接生成网页截图":http://eshow365.cn/6-9418-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!