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

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 复制代码
<?php
// 引入并执行 PhantomJS 脚本
$phantomScript = './phantom_script.js';
$command = 'phantomjs ' . $phantomScript;
$output = shell_exec($command);

echo 'Screenshot saved at: ' . trim($output);
  • phantom_script.js
javascript 复制代码
var page = require('webpage').create();
page.viewportSize = { width: 900, height: 600 };

var url = 'https://www.kancloud.cn/manual/thinkphp6_0/1037479';  // 替换为您的URL

var 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()
相关推荐
MAX°孟兆6 天前
VLOOK 2026.1 上新:小封面/PDF/文档脚注/表格全屏浏览,还有主题大焕新~实用好用Markdown主题&插件
typora·markdown·主题·插件·vlook
之歆8 天前
Coze(扣子)Agent 插件
插件·coze
zhyongrui9 天前
WordMark:把「查词」变成一种自然的阅读习惯
开源软件·插件
用什么都重名12 天前
【Dify学习笔记】:Dify插件离线转换教程
插件·dify·ollama
RichardLau_Cx13 天前
Google Chrome 浏览器安装「豆包插件」完整教程
前端·chrome·插件·豆包
装疯迷窍_A15 天前
ARCGIS国土超级工具集1.8更新说明
arcgis·插件·变更调查·尖锐角·勘测定界·分割矢量
帆张芳显17 天前
智表zcell产品V3.5 版发布,新增行列选中操作等功能
前端·javascript·excel·插件·canva可画
jackletter18 天前
3dsmax2026插件开发入门:使用.net8开发
.net·3dmax·入门·插件·.net8·3dsmax2026
gsls20080820 天前
jenkins插件 Publish Over SSH 离线下载安装配置
ubuntu·ssh·jenkins·插件·离线
Ama_tor20 天前
obsidian进阶の插件系列|Templater从小白到菜鸟
javascript·markdown·插件·obsidian