最近研究了下phantomjs,感觉还是非常不错的。

首先到官网下载一个源码包

http://phantomjs.org/download.html

点击源码包下载如图:

然后在linux下将必要的一些软件都用yum方式先安装好

sudo yum -y install gcc gcc-c++ make flex bison gperf ruby \
openssl-devel freetype-devel fontconfig-devel libicu-devel sqlite-devel \
libpng-devel libjpeg-devel

接着,解压下载好的源码包,执行./build.sh

他还提示这个安装过程可能会比较长,大约30分钟左右,安装好后,在当前目录下会有个bin/目录,将bin/目录下的phantomjs移动到/usr/bin下即可

到这里,phantomjs就安装好了

到一个空目录下创建一个jietu.js文件,代码如下:

注释部分开启后屏幕将以1024*768的尺寸截取网页第一屏,

var page = require('webpage').create();
var args = require('system').args; var pageW = 1024;
var pageH = 768; //page.viewportSize = {
// width: pageW,
// height: pageH
//}; var url = args[1];
var filename = args[2];
page.open(url, function (status) {
if (status !== 'success') {
console.log('Unable to load ' + url + ' !');
phantom.exit();
} else {
window.setTimeout(function () {
// page.clipRect = { left: 0, top: 0, width: pageW, height: pageH };
page.render(filename);
console.log('finish:', filename);
phantom.exit();
}, 1000);
}
});

最后执行如下命令

//>phantomjs js文件 要截取的网址 图片存储路径

>phantomjs ./jietu.js http://www.cnblogs.com ./cnblogs.png

图片就截图好了,如图

centos下利用phantomjs来完成网站页面快照截图的更多相关文章

  1. Linux(CentOs)下安装Phantomjs + Casperjs

    Linux(CentOs)下安装Phantomjs + Casperjs 是参照cnMiss's Blog http://ju.outofmemory.cn/entry/70691的博客进行安装的 1 ...

  2. CentOS下利用Docker部署Surging

    原文:CentOS下利用Docker部署Surging 1. 安装Centos, 配置固定ip配置文件地址vi /etc/sysconfig/network-scripts/ifcfg-ens33`` ...

  3. centos下利用mail命令进行邮件发送

    centos下默认自带mail命令: 可以用如下命令查看存放位置: which mail 结果如下: 如果没有安装可以使用 如下命令安装 yum -y install mailx 利用mail命令进行 ...

  4. 在CentOS下利用Eclipse调试FFmpeg

    所需软件 64位软件打包下载链接:http://pan.baidu.com/s/1i3B08Up 密码:o50u https://yunpan.cn/cBKDSbrGDgBvz  访问密码 1f55 ...

  5. 利用PIL和Selenium实现页面元素截图

    预备 照张相片 selenium.webdriver可以实现对显示页面的截图: from selenium import webdriver dr = webdriver.Firefox() dr.g ...

  6. centos下利用yum安装LAMP(Linux+Apache+MySQL+PHP)及配置

    先说下我的实践配置,centos6.5(64位),联网 安装前准备:关闭防火墙 service iptables stop 安装MySQL 打开终端,root用户 1 yum install mysq ...

  7. centos下利用qemu搭建arm模拟器

    有点繁琐,整理一下,系统环境centos6.6,虚拟机以及实际系统中测试通过. 一.交叉编译器的下载与安装1.下载地址:http://blog.csdn.net/dldw8816/article/de ...

  8. CentOS下利用sshpass不用手动输入密码远程执行命令

       在测试的时候要同时操作多台机器,每次都要挨个去执行几乎相同的命令或者修改一些设置,这样很影响工作效率也很烦,所以就想写一个脚本,远程自动去做这些操作.远程执行命令很简单,但是不能在执行命令加上命 ...

  9. Windows下利用Chrome调试IOS设备页面

    本文介绍如何在 Windows 系统中连接 iOS设备 并对 Web 页面进行真机调试 必须前提 iOS设备.数据线 Node.js 环境 Chrome 浏览器 环境准备 安装Node环境 参考Nod ...

随机推荐

  1. 客户端访问windows server2016 服务器共享 速度慢

    客户端(windows10)敲完地址后,要过很久才会谈出窗口.  所有的客户端都出现过此现象. 解决:关闭server的 Smb1.0

  2. Go Goosy Disk Docker Port Provisioners(GDP)

    小伙伴们,她们中出了一个叛徒,他是谁?是谁?是谁? 由一则口口相传的故事开始吧: 中午吃饭时间抽空小李跑到同座大楼的小张公司串门,小李是一名docker顾问熟称砖家,这间公司老板想挖小李,他盯了前台不 ...

  3. python递归(函数)

    递归:一个过程或函数调用自身的一种方法. 1. 效果图 2. 代码 def factorial(n): ''' 该函数用来求任意数的阶乘 参数: n 要求阶乘的数字 ''' # 基线条件 判断n是否为 ...

  4. USACO简介导论

      1000: USACO简介 时间限制: 1 Sec  内存限制: 128 MB提交: 8  解决: 7[提交] [状态] [讨论版] [命题人:外部导入] 题目描述 来源/分类 USACO-00  ...

  5. Oauth2的使用(第三方授权登录)

    例子: 京东商城 ,微博 ,用户三者之间的关系 第一方:用户 第二方:京东商城 第三方:微博 用户不希望在京东商城上注册,可以授权微博使用微博上的用户信息进行登录京东商城. 授权流程: 地址一:授权页 ...

  6. Qt Installer Framework翻译(5-3)

    推广更新 创建在线安装程序,以便能够向安装产品的用户推广更新. 为了推广更新,需要执行以下步骤: 将待更新内容复制到package文件夹. 在package.xml文件中增加待更新组件的元素的值. 使 ...

  7. Xen+OpenQRM快速部署

    一.选择系统平台 a)   Ubuntu-11.10-server-amd64 二.Xen安装 a)   Xen安装 # apt-get -y install xen-hypervisor-4.1-a ...

  8. Dynamics 365 CRM Connected Field Service 不能接收IoT Alert

    今天浪费了2,3个小时再connected field service(CFS)上面. 状况如下 1. 在CFS中添加了新的customer assets,并且点击了注册按钮. 2. 注册步骤一直在i ...

  9. [CF1192B]动态直径

    题意 给一棵固定形态的树,边有边权,每次修改一条边权,在线求出修改后树的直径. 思考 写出树的全dfs序.生成方式为:每当一个点进栈或入栈时,记录它的编号. 考虑这个dfs序上两点之间的距离.设某个节 ...

  10. 使用Python写的WingPro7 Pyside2 和 PyQt5插件

    pyside2的 import wingapi import subprocess pyside2_uic = "pyside2-uic" pyside2_qrc = " ...