linux 搭建PhantomJS并实现网站快照截图教程
选择你的操作系统进行下载安装包
远昔用的centos7.x 64位的VPS进行搭建的
运行命令:
wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2
下载文件到服务器,因为文件是bz2格式,所以我们需要使用bzip2命令进行解压
bzip2 -d phantomjs-2.1.1-linux-x86_64.tar.bz2
之后在执行tar解压命令到目录/user/local/
tar xvf phantomjs-2.1.1-linux-x86_64.tar -C /usr/local/
然后安装依赖软件
yum -y install wget fontconfig
之后我们重命名文件夹
mv /usr/local/phantomjs-2.1.1-linux-x86_64/ /usr/local/phantomjs
之后创建一个软链接,具体作用就是能直接调用phantomjs,就跟安装python等软件是一个原理
ln -s /usr/local/phantomjs/bin/phantomjs /usr/bin/
然后我们获取phantomjs版本号测试下
#通过版本号显示说明phantomjs安装成功了
phantomjs -v
或
phantomjs --version
到这里就完成了安装phantomjs。上面的安装教程是参考
PHP调用phantomjs:
下面是说说如何在web上调用运行phantomjs
phantomjs是系统软件,我们需要用到php的shell_exec函数,宝塔php默认是禁用了,启动这个函数后一定要重启php服务才行
首先我们在网站根目录中创建一个test.js的文件,内容代码如下:
var page = require('webpage').create();
var sys = require('system');//创建system对象
var url = sys.args[1];
var filename = sys.args[2];
// 浏览器窗口大小
page.viewportSize = { width: 1024, height: 768 };
// 网页截图窗口大小
page.clipRect = { top: 0, left: 0, width: 1024, height: 768 };
baidu_ua='Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)';
page.customHeaders = {
'User-Agent':'Mozilla/5.0 (Linux; Android 8.0; Pixel 2 Build/OPD3.170816.012) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.71 Mobile Safari/537.36', //UA
};
// 进行网页打开并保存为图片的操作
page.open(url, function() {
page.render(filename);
phantom.exit();
});
当然phantomjs远不止这么点功能,他还支持模拟head头,cookie,ua等数据,还可以进行控制台信息输出,网站加载项记录等等功能,更多参数可以参考官网:http://phantomjs.org/
评论
发表评论: