PHP实现网页截图的方法:首先下载CutyCapt;然后解压tar包;最后使用代码“public function index(){echo ”;echo date(‘Y-m-d H:m:s’)…}”实现截图即可。
推荐:《PHP视频教程》
如果需要将一个网址的内容做成视图图片输出,则需要辅助工具CutyCapt来实现这一需求
Windows系统
下载CutyCapt
CutyCapt下载地址:http://sourceforge.net/projects/cutycapt/files/cutycapt/解压tar包,看到CutyCapt.exe 不需要再点击安装代码实现(时间需要20多秒):
public function index() { echo ''; echo date('Y-m-d H:m:s').'
'; $_GET['url'] = 'https://www.aliyun.com/jiaocheng/970387.html'; $url=$_GET["url"]; $imgName = rand(10000,99999); $out = 'D:/game/'.$imgName.'.png'; //输出图片地址 $path = 'D:/game/CutyCapt.exe'; //工具存储地址 $cmd = "$path --url=$url --out=$out"; echo $cmd.'
'; system($cmd, $em); if(!empty($em)){ echo '成功了呢'; }; echo date('Y-m-d H:m:s').'
'; }登录后复制注意(如果直接命令行执行 $cmd报错):
QIODevice::read: maxSize argument exceeds QByteArray size limit terminate called after throwing an instance of ‘std::bad_alloc’ what(): std::bad_alloc This application has requested the Runtime to terminate it in an unusual way. Please contact the application’s support team for more information.
处理:
1、开始–运行–输入cmd
2、输入 cd %windir%system32 (进入windows安装目录的system32文件夹)
3、输入 Regsvr32 Msxml3.dll
4、缘由链接立即学习“PHP免费学习笔记(深入)”;
Linux系统
CutyCapt是一个截图工具
官方网站 http://cutycapt.sourceforge.net/
我主要的目的是解决用php保存网页为图片,废话不多少开始安装CutyCaptyum install epel-release#依赖安装yum install Xvfbyum install xorg-x11-fonts*yum install qtwebkit-devel qt-devel#中文字体yum install fonts-chineseyum install CutyCapt#测试使用xvfb-run --server-args="-screen 0, 1920x1080x24" CutyCapt --url=http://www.phpsong.com --out=phpsong.jpg如果提示错误libEGL warning: DRI2: failed to open swrast (search paths /usr/lib64/dri)登录后复制
解决方法
yum install mesa-dri-drivers登录后复制
问题
1)截图时候有乱码
2) 执行速度慢
3)截取百度和小松博客,发现按钮上的文字没有显示,应该也是乱码导致的PS.中文乱码问题
将windows下的中文字体上传至/usr/share/fonts目录,执行下命令fc-cache即可
测试截图
xvfb-run --server-args="-screen 0, 1920x1080x24" CutyCapt --url=http://www.phpsong.com --out=1.jpgxvfb-run --server-args="-screen 0, 1920x1080x24" CutyCapt --url=http://www.baidu.com --out=2.jpgxvfb-run --server-args="-screen 0, 1920x1080x24" CutyCapt --url=http://www.163.com --out=3.jpgxvfb-run --server-args="-screen 0, 1920x1080x24" CutyCapt --url=http://www.sina.com.cn --out=4.jpg登录后复制
例子
登录后复制
以上就是PHP如何实现网页截图的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2128114.html