PhantomJS这几项功能你用过吗?

一、下载

下载链接

二、解压安装包

直接解压即可

三、配置环境变量

找到高级系统设置,打开它,出现以下图。点击环境变量。分别点击编辑按钮分别新建添加当初的解压路径,到bin文件夹。点击确定。这样,环境变量配置好了,可以再命令行工具直接使用phantomjs命令。

四、代码段

新建一个JS文件,如:main.js 执行命令:phantomjs main.js

1、打印指定网址标题

1var page = require('webpage').create(); 2phantom.outputEncoding="gbk"; 3page.open("https://url.163.com/EWS", function(status) { 4console.log("Status: " + status); 5if ( status === "success" ) { 6 console.log(page.title) 7} else { 8console.log("Page failed to load.");  9} 10phantom.exit(0); 11}); 12

2、生成网页截图

1var page = require('webpage').create(); 2page.open('https://maomin.blog.csdn.net/', function() { 3  page.render('github.png'); 4  phantom.exit(); 5}); 6 7

3、将网页转换为PDF

1var wpage = require('webpage').create();  2var url = "https://en.wikipedia.org/wiki/Main_Page";  3var output = "test.pdf";  4 5wpage.paperSize = {  6   width: screen.width+'px',  7   height: '1500px',  8    9   margin: { 10      'top':'50px',  11      'left':'50px',  12      'rigtht':'50px'  13   },  14   orientation:'portrait',  15   header: {  16      height: "1cm",  17      contents: phantom.callback(function(pageNumber, nPages) {  18         return "<h5>Header <b>" + pageNumber + " / " + nPages + "</b></h5>";  19      })  20   },  21   footer: {  22      height: "1cm",  23      contents: phantom.callback(function(pageNumber, nPages) {    24         return "<h5>Footer <b>" + pageNumber + " / " + nPages + "</b></h5>";  25      })  26   }  27}  28wpage.open(url, function (status) {  29   if (status !== 'success') {  30      console.log('Page is not opening');  31      phantom.exit();  32   } else {  33      wpage.render(output);  34      phantom.exit();      35   }  36}); 37

未完待续……


欢迎关注我的公众号,不定时发放前端精品电子书以及前端学习视频,更有精品文章等着你哦。你还可以加我微信,小弟拉拢了很多IT大佬,创建了一个技术交流、文章分享群,欢迎你的加入。

  • 作者:Vam的金豆之路

  • 主要领域:前端开发

  • 我的微信:maomin9761

  • 微信公众号:前端历劫之路


本文转转自微信公众号前端历劫之路原创https://mp.weixin.qq.com/s/PLGw8_rRFANOdDwWk4ZogA,如有侵权,请联系删除。

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )

Eclipse 添加 UML Model插件

1.下载安装ModelGson下载链接:https://pan.baidu.com/s/1smIZApv 密码:mu5leclipse安装ModelGson(注意不用解压ModelGson,直接导入即可) 点击help》InstallNewSoftware,出现下图,然后add下载的安装包,勾选Name选项,