php 网页截屏,php使用CutyCapt实现网页截图保存的方法
本文实例讲述了php使用CutyCapt实现网页截图保存的方法。分享给大家供大家参考,具体如下:
网页截图这个功能大家可能用到最多的就是QQ截图,或利用asp.net来实现截图,其实我们也可以直接使用php来网页截图,这里就来给大家介绍php利用CutyCapt实现网页截图的流程:
CutyCapt下载地址:http://sourceforge.net/projects/cutycapt/files/cutycapt/
windows CutyCapt不需要安装,直接保存到你的电脑中即可,然后php代码如下写:
/*
网页截图功能,必须安装IE+CutyCapt
url:要截图的网页
out:图片保存路径
path:CutyCapt路径
cmd:CutyCapt执行命令
比如:http://你php路径.php?url=https://www.jb51.net
*/
$url=$_GET["url"];
$imgname=str_replace('http://','',$url);
$imgname=str_replace('https://','',$imgname);
$imgname=str_replace('.','-',$imgname);
$out = 'D:/webroot/test/'.$imgname.'.png';
$path = 'D:/webserver/CutyCapt.exe';
$cmd = "$path --url=$url --out=$out";
echo $cmd;
system($cmd);
?>
如果你是linux系统就需要简单的配置一下CutyCapt,安装网站截图软件CutyCapt.
一、先安装Qt47,增加qt47的下载源,代码如下:
vi /etc/yum.repos.d/atrpms.repo
[atrpms]
name=CentOS $releasever – $basearch – ATrpms
baseurl=http://dl.atrpms.net/el$releasever-$basearch/atrpms/stable
gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms
gpgcheck=1
enabled=1
[atrpms-testing]
name=CentOS $releasever – $basearch – ATrpms testing
baseurl=http://dl.atrpms.net/el$releasever-$basearch/atrpms/testing
gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms
gpgcheck=1
enabled=1
yum update
yum installqt47
yum installqt47-devel
yum installqt47-webkit
yum installqt47-webkit-devel
也许这里还会有报错提示:
warning: qt44-x11-4.4.3-10_4.el5.x86_64.rpm: Header V4 DSA signature: NOKEY, key ID 66534c2b
error: Failed dependencies:
libGLU.so.1()(64bit) is needed by qt44-x11-4.4.3-10_4.el5.x86_64
libmng.so.1()(64bit) is needed by qt44-x11-4.4.3-10_4.el5.x86_64
//解决:
//yum -y installqt-devel*
二、安装 CutyCapt,代码如下:
cd /data0/software
svn co https://cutycapt.svn.sourceforge.net/svnroot/cutycapt
mv cutycapt/CutyCapt /usr/local/cutycapt
cd /usr/local/cutycapt
qmake
make
此处可能会报错:make: *** [CutyCapt] Error 1
解决:yum update sqlite,再次执行 make,如果还不成功 qmake-qt47 再次执行make.
三、下载x-server,代码如下:
wget http://www.flexthinker.com/wp-content/uploads/2009/11/xvfb-run.sh.txt
mv ./xvfb-run.sh.txt/usr/local/cutycapt/xvfb-run.sh
chmodu+x /usr/local/CutyCapt/xvfb-run.sh
四、安装中文包
yum installfonts-chinese
五、安装ImageMagick
yum installImageMagick
六、测试,代码如下:
/usr/local/cutycapt/xvfb-run.sh --server-args="-screen 0, 1024x768x24"/usr/local/cutycapt/CutyCapt --url=https://www.jb51.net--out=/tmp/163.jpg
163.jpg没有加载出flash.
七、下载64位flash插件,代码如下:
cd /data0/software
#wget http://119.188.72.26/1/ishare.down.sina.com.cn/14036482.so?ssig=YB70Xk7Ph9&Expires=1340899200&KID=sina,ishare&ip=1340777795,114.255.44.&fn=libflashplayer.so
http://ishare.iask.sina.com.cn/f/13659493.html
ll /usr/lib64/mozilla/plugins/
lrwxrwxrwx 1 root root 41 06-27 14:00 libflashplayer.so ->/usr/lib64/flash-plugin/libflashplayer.so
cp /data0/software/libflashplayer.so /usr/lib64/flash-plugin/
测试加载成功.
希望本文所述对大家PHP程序设计有所帮助。
php 网页截屏,php使用CutyCapt实现网页截图保存的方法相关推荐
- php 网页截屏,怎么用PHP实现网页截图
代码如下: <?phpset_time_limit (60);//截屏$im = imagegrabscreen();imagepng($im, "snap1.png");/ ...
- Java实现网页截屏功能(基于phantomJs)
公司最近有个需求:把用户第一次的测量身体信息和最近一次测量信息进行对比,并且需要把对比的数据截成图片可以发给用户(需要在不打开网页的情况下实时对网页进行截图然后保存到服务器上,返回图片地址),通过网上 ...
- java网页截图_Java实现的简单网页截屏功能示例
本文实例讲述了Java实现的简单网页截屏功能.分享给大家供大家参考,具体如下: package awtDemo; import java.awt.AWTException; import java.a ...
- 利用PhantomJS进行网页截屏,完美解决截取高度的问题
利用PhantomJS进行网页截屏,完美解决截取高度的问题 参考文章: (1)利用PhantomJS进行网页截屏,完美解决截取高度的问题 (2)https://www.cnblogs.com/jaso ...
- JavaScript实现网页截屏方法总结
" 关注『前端开发博客』公众号,回复 加群 " 最近研究了下如何利用JavaScript实现网页截屏,包括在浏览器运行的JS,以及在后台运行的nodeJs的方法.主要看了以下几个: ...
- JavaScript 实现网页截屏五种方法
JavaScript 实现网页截屏五种方法 最近研究了下如何利用JavaScript实现网页截屏,包括在浏览器运行的JS,以及在后台运行的nodeJs的方法.主要看了以下几个: PhantomJS P ...
- java 截图_Java实现网页截屏
下面是编程之家 jb51.cc 通过网络收集整理的代码片段. 编程之家小编现在分享给大家,也给大家做个参考. import java.awt.AWTException; import java.awt ...
- JS 实现网页截屏五种方法
最近研究了下如何利用JavaScript实现网页截屏,包括在浏览器运行的JS,以及在后台运行的nodeJs的方法.主要看了以下几个: PhantomJS Puppeteer(chrome headle ...
- 免费的网页截屏API有哪些?
介绍 网页截屏大师使用真正的Chrome浏览器捕捉像素完美的屏幕截图,我们的核心服务托管在阿里云与腾讯云之上,API天然分布式.高可用. 起步 您可以使用 GET 或者 POST 向下面的入口发起一个 ...
最新文章
- android 自启动列表,Android 机型设置自启动的跳转界面
- C++:C++语言入门级基础知识考察点回顾之数组、指针
- 【拔刀吧少年】之条件语句
- UI自学宝典,完整UI学习线路图
- Hello JavaFX 2.0:命令行介绍
- 【C语言】用指针作为形参完成数据的升序排列
- SpringBoot------定时任务
- C#Const与static readonly的区别
- VMWare安装苹果Mac OS X
- 你安全吗网剧技术探讨-个人向
- 正在启动python的代码补全客户端_让 python 命令行也可以自动补全
- matlab rfdata,MATLAB在射频电路设计中的应用
- Collection NSArrayM was mutated while being enumerated
- MATLAB环境下基于振动信号的轴承状态监测和故障诊断
- 计算机教师帮扶记录,教师结对帮扶工作总结范文(通用6篇)
- 花园多层住宅设计CAD施工图教程分享
- 关于版权声明的写法 (转)
- MP4测试视频URL地址分享,亲测有效。可用于测试HTML5播放器效果。
- 使用蓝牙耳机玩游戏声音卡顿延迟问题
- 根据mask绘制contour ,bounding box。批量展示图片 等工具函数