php中CutyCapt实现网页截图保存代码
网页截图这个功能大家可能用到最多的就是QQ截图,或利用asp.net来实现截图,其实我们也可以直接使用php来网页截图,下面我来给大家介绍php利用CutyCapt实现网页截图,有需要的朋友可参考.
CutyCapt下载地址:http://sourceforge.net/projects/cutycapt/files/cutycapt/
windows CutyCapt不需要安装,直接保存到你的电脑中即可,然后php代码如下写:
- <?php
- /*
- 网页截图功能,必须安装IE+CutyCapt
- url:要截图的网页
- out:图片保存路径
- path:CutyCapt路径
- cmd:CutyCapt执行命令
- 比如:http://你php路径.php?url=http://www.phpfensi.com
- */
- $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=http://www.111cn.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
- <a href="http://ishare.iask.sina.com.cn/f/13659493.html" target="_blank">http://ishare.iask.sina.com.cn/f/13659493.html</a>
- 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/
测试加载成功.