我想要通过php、java等程序自动为业务中的不同网站进行网页截图保存。通过网络上资料阅读,程序语言本身无法实现该功能,需要其他程序配合。
我的服务器是Linux CentOS 6.x,因此在这里我只记录在CentOS下面的过程和问题
主要用到以下软件工具:
1.Qt47:这个是CutyCapt底层架构,CutyCapt依赖Qt47(必须)
2.CutyCapt:进行网页截图的工具(必须)
3.x-server:需要配合CutyCapt进行截图(必须)
4.中文包:对中文网站截图,需要中文包的支持(必须)
5.ImageMagick:截图后对图片进行压缩等处理(可选)
安装过程步骤
一、先安装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 install qt47
yum install qt47-devel
yum install qt47-webkit
yum install qt47-webkit-devel
可能的错误1
引用
warning: qt44-x11-4.4.3-10_4.el5.x86_64.rpm: Header V4 DSA signature: NOKEY, key ID 66534c2b
解决
引用
yum -y install qt-devel*
可能的错误2:某些冲突conflict
引用
qt47-x11 conflicts with qt-x11
qt47-x11 conflicts with qt-x11
解决:通过yum remove 卸载冲突的内容
引用
yum remove qt-devel
yum remove qt-x11
二、安装 CutyCapt
下载代码,这里需要用到SVN,如果没有安装,可以使用命令安装:yum install subversion
cd /data0/software #目录根据自己的需求情况而不同
svn co https://cutycapt.svn.sourceforge.net/svnroot/cutycapt
mv cutycapt/CutyCapt /usr/local/cutycapt #目录根据自己的需求情况而不同
cd /usr/local/cutycapt
编译安装
qmake
make
可能的错误1
引用
-bash: qmake: command not found
解决:使用命令
引用
qmake-qt47
可能的错误2
引用
make: *** [CutyCapt] Error 1
解决:
引用
yum update sqlite
三、下载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
chmod u+x /usr/local/CutyCapt/xvfb-run.sh
四,安装中文包
yum install fonts-chinese
五,安装ImageMagick
yum install ImageMagick
六,运行 CutyCapt进行截图:执行以下命令,如果没有错误,就会在当前目录下面保存截图
/usr/local/cutycapt/xvfb-run.sh --server-args="-screen 0, 1024x768x24"/usr/local/cutycapt/CutyCapt --url=http://www.163.com --out=163.jpg
Q:出现-bash: xvfb-run: command not found 或 xauth : command not found
A:安装 yum install Xorg xauth xorg-x11-fonts*(Xorg,xauth,xorg-x11-fonts* 这是三个不同的工具,每个都需要单独运行yum install来安装)
Q:错误提示:"mktemp: too few X's in template `Xauthority'."
A: 找到 AUTHFILE=$(mktemp -p "$XVFB_RUN_TMPDIR" Xauthority)
修改为:AUTHFILE=$(mktemp -p "$XVFB_RUN_TMPDIR" Xauthority.XXXXXXXX)
Q:错误提示:CutyCapt: cannot connect to X server :99
A: 确认server-args参数是否正确,
修改xvfb-run.sh脚本中SERVERNUM=99 改为SERVERNUM=0
Q:截出来的图片没有中文字,需要安装中文字体
A: yum install cjkuni-ukai-fonts cjkuni-uming-fonts -y
七、处理截图
由于截屏的是整个网站的页面,只需要第一屏幕
convert -crop 1024x768+0+0 163.jpg 1632.jpg
缩小图片
convert -resize 40%x40% 1632.jpg 1632.jpg
分享到:
相关推荐
Centos7.9安装部署Zabbix6,需要安装包的发邮箱,文件里面包含邮箱地址
CentOS是Linux发行版之一,相信不少朋友想知道CentOS系统安装配置的方法,下面小编给大家介绍下安装配置CentOS6.6的具体步骤,感兴趣的朋友不妨来了解下吧。
centos6离线rpm安装unzip和zip zip-3.0-1.el6_7.1.x86_64.rpm unzip-6.0-5.el6.x86_64.rpm 解决Red Hat 6.9系统No more mirrors to try问题; 1.查看 unzip 是否被安装 rpm -qa | grep unzip 2.先安装unzip: rpm ...
### Centos6安装VNCServer实现图形化访问 #### 一、配置163的yum源 为了确保能够顺利地安装所需的软件包,首先需要配置一个稳定可靠的软件仓库。这里选择的是163镜像站作为CentOS 6的yum源。 1. **导入CentOS-6的...
CentOS6离线安装docker1.7,以及相关的依赖架包,包括docker-io-1.7.1-2.el6.x86_64.rpm、lxc-libs-1.0.11-1.el6.x86_64.rpm、lxc-1.0.11-1.el6.x86_64.rpm等以及device-mapper-1.02.117-12.el6_9.1.x86_64.rpm、...
CentOS 5.8 安装教程 CentOS 5.8 是一个流行的 Linux 操作系统,本文将指导用户如何安装 CentOS 5.8。 知识点 1: 准备 CentOS 的 ISO 文件 在安装 CentOS 5.8 之前,需要准备好 CentOS 的 ISO 文件。用户可以从 ...
### CentOS 6.7 安装 JDK 1.8 的详细...如果在安装过程中遇到任何问题,可以检查网络连接、文件权限或环境变量配置等常见问题点。此外,如果需要更高版本的 JDK 或者特定版本,只需替换下载链接即可完成相应的安装。
在这篇文章中,我们将详细介绍 CentOS 8 的安装过程,并提供相关的图解,以便读者更好地理解和安装 CentOS 8。 一、CentOS 8 概述 CentOS 8 是继 RHEL 8 之后的最新版本,提供了两种模式:CentOS Stream 和 CentOS...
Centos 7.6 安装流程详解 在这篇文章中,我们将详细介绍 Centos 7.6 的安装流程,从虚拟机的创建到 Centos 7.6 的安装,再到 Secure CRT 与虚拟机的连接。 虚拟机的创建 在安装 Centos 7.6 之前,我们需要创建一...
centos7.0安装mysql centos7.0安装mysql centos7.0安装mysql
" CentOS安装过程中常见问题和解决方案" 在 CentOS 安装过程中,用户经常会遇到一些问题,这些问题可能会导致安装失败或安装过程卡顿。为了帮助用户解决这些问题,本文总结了 CentOS 安装过程中常见的问题和解决...
CentOS7安装及网络配置完整过程(可解决Dell R730) 本文将指导您完成CentOS7的安装和网络配置,解决Dell R730服务器的安装问题。 一、服务器配置硬件 在安装CentOS7之前,需要了解服务器的硬件配置。Dell R730...
内容: 1、centos 6 安装 mantisbt-1.2.8 ; 2、 centos 7 安装 mantisbt-2.12.0.zip 3、mantisbt-2.12.0.tar.gz包; 4、MySQL-5.5.59-1.el7.x86_64.rpm-bundle.tar包
总结一下,安装Zabbix 6.0在CentOS 8上涉及的关键步骤包括:准备安装脚本、解压文件、运行安装脚本、设置数据库、配置Web界面以及启动和启用服务。这个过程既可以通过在线脚本完成,也可以离线安装,具体取决于你的...
本指南将指导您完成 CentOS 7 的安装过程,涵盖从虚拟机设置到安装完成后的基本配置。 虚拟机设置 在开始安装 CentOS 7 之前,需要设置虚拟机的网络适配器模式为“桥接模式”。这将允许虚拟机连接到外部网络。 ...
通过本文档,我们将详细介绍如何在CentOS 7系统上安装Git,包括从下载源码包到完成安装的整个过程,并对关键步骤进行深入解析。 #### 二、准备工作 在开始安装之前,请确保您的CentOS 7系统已更新至最新版本。可以...
OS:CentOS release 6 Kernel: 2.6.32-754.35.1.el6.x86_64 ffmpeg: 2.6.8 虽然下载速度慢点,但成功安装了多台机器
**CentOS 5.5安装全过程** CentOS是一款基于Linux的开源操作系统,它与Red Hat Enterprise Linux (RHEL)有着极高的兼容性。CentOS 5.5是该系列的一个重要版本,发布于2010年,为用户提供了一个稳定且可靠的服务器...
由于官方的Chrome浏览器并不直接支持旧版的CentOS,我们需要采取一些额外的步骤来实现安装。 首先,我们需要更新系统的软件包。在终端中输入以下命令来更新yum仓库: ```bash sudo yum update ``` 接下来,由于...
一些情况下, 服务器不联网, 则安装一些常用的命令比较麻烦, 本资源提供 Centos 离线安装 zip 和 unzip 命令和安装方法, 文件包含 unzip-6.0-21.el7.x86_64.rpm 和 zip-3.0-11.el7.x86_64.rpm以及安装命令。