1、下载phantomjs

http://phantomjs.org/



2、运行

新建phantomjs.bat,记得改目录路径

里面内容为:

D:\java\phantomjs\phantomjs.exe D:\java\phantomjs\code\server.js 8080

3、新建server.js文件,放在code目录下,注意code目录也是新建的,以下是server.js内容

if (s=== "success" ) {
            page.evaluate(function () {
                $(".canvas_box").appendTo(".app_box").css("float","none").siblings().remove();
                $(".app_box,body").css("margin",0);
            });             var base64= page.renderBase64('png'),type="data:image/png;base64,"
            var img="<img src='"+type+base64+"'>"
            res.write(img);
            res.close();
        }var page = require('webpage').create();
var server = require('webserver').create();
var sys = require('system'); if(sys.args.length !== 2){
    console.log('args is error,demo: phantomjs server.js 80');
    phantom.exit(1);
}else{
    console.log("welcome! system is start on port:"+sys.args[1]+"\ntest url is: http://localhost/http://www.baidu.com");
}
 
var port = sys.args[1];
 
//输出到网页预览图片,地址:http://localhost/http://www.baidu.com
/*
service = server.listen(port,function(req, res){
    var url=decodeURIComponent(req.url).substr(1);
    res.statusCode = 200;
    res.headers = {
        'Cache': 'no-cache',
        'Content-Type': 'text/html;charset=utf-8'
    };     page.open(url, function (s) {
        if (s=== "success" ) {
            page.evaluate(function () {
                $(".canvas_box").appendTo(".app_box").css("float","none").siblings().remove();
                $(".app_box,body").css("margin",0);
            });             var base64= page.renderBase64('png'),type="data:image/png;base64,"
            var img="<img src='"+type+base64+"'>"
            res.write(img);
            res.close();
        }
    });
});*/ //输出base64字符串
service = server.listen(port,function(req, res){
    var url=decodeURIComponent(req.url).substr(1);
    res.statusCode = 200;
    res.headers = {
        'Cache': 'no-cache',
        'Content-Type': 'text/html;charset=utf-8'
    };     page.open(url,/*{ keepAlive: true },*/ function (s) {
       var base64= page.renderBase64('png');
        res.write(base64);
        res.close();
    });
});

4:訪问地址

localhost:8080/http://baidu.com

phantomjs环境搭建已经运行的更多相关文章

  1. Mac系统下STF的环境搭建和运行

    本文参考以下文章整理:MAC 下 STF 的环境搭建和运行 一. 前言 STF,全称是Smartphone Test Farm,WEB 端批量移动设备管理控制工具,就是可以用浏览器来批量控制你的移动设 ...

  2. JeeSite环境搭建及运行和打包(master20161117)

    涉及的软件: 1.phpStudy(主要用MySql) 2.maven3(用于依赖包,下面我将上传已经下载好所有依赖包的版本,保证运行正常) 具体操作: 0.前言 由于GitHub上的Release版 ...

  3. Ahjesus Nodejs01 环境搭建及运行

    访问http://nodejs.org/,根据系统选择下载文件,我用的win7 64 安装一路下一步直到完成 运行cmd输入node -v查看是否安装成功 成功会显示版本号 到此环境搭建完毕 ==== ...

  4. Eclipse环境搭建并且运行wordcount程序

    一.安装Hadoop插件 1. 所需环境  hadoop2.0伪分布式环境平台正常运行 所需压缩包:eclipse-jee-luna-SR2-linux-gtk-x86_64.tar.gz 在Linu ...

  5. hadoop_spark伪分布式实验环境搭建和运行实例详细教程

    hadoop+spark伪分布式环境搭建 安装须知 单机模式(standalone): 该模式是Hadoop的默认模式.这种模式在一台单机上运行,没有分布式文件系统,而是直接读写本地操作系统的文件系统 ...

  6. linux/centos elasticsearch 环境搭建 安装 运行 使用

    环境搭建也是有些坑的存在,所以整理了一下搭建流程,安全无痛. ElasticSearch是一个开源的分布式搜索引擎,具备高可靠性,支持非常多的企业级搜索用例. 一.java 环境 直接apt安装火箭一 ...

  7. WEB 端批量移动设备管理控制工具 STF 的环境搭建和运行

    最近项目涉及到较多设备批量管理的需求,发现一工具,可以批量对大量设备进行WEB端管理,工具主页:https://openstf.github.io/工具名STF(Smartphone Test Far ...

  8. jenkins+phantomjs环境搭建及使用

    #jenkins+phantomjs 前端性能自动化测试的安装和使用#gcc GNU编译器套件 https://gcc.gnu.org/ #nginx 高性能的HTTP和反向代理服务器 http:// ...

  9. widows下node.js环境搭建及运行js

    昨天刚刚开始学习node.js,网上一些教程不是很清楚,所以总结一下我的经验. 1.安装. 安装省略,就到官网上去下载安装一下就好.安装完成之后,打开cmd,输入"path",查看 ...

随机推荐

  1. STC12C5201AD AD采样+串口发送模板

    #include<reg52.h> sfr ADC_CONTR = 0xBC; //ADC control register sfr ADC_RES = 0xBD; //ADC 8-bit ...

  2. 带你轻松玩转Git--图解三区结构

    在上篇文章的结尾我们提到了Git 的三区结构,在版本控制体系中有这样两种体系结构,一种是两区结构一种是三区结构.接下来我们通过对Git三区的结构学习来帮助我们更好的去理解并运用Git. 两区结构是其他 ...

  3. jenkins+maven +svn+tomcat7集群部署(一)

    在网上看了好多有关集群部署的文章,感觉都不是太连贯,非常多仅仅是给你说怎么安装而已,可是过程中遇到的问题真不少,可是也攻克了非常多问题,希望我的文章可以帮到那些想学习的人吧,jenkins主要是攻克了 ...

  4. android api 中文 (75)—— AdapterView.OnItemClickListener

    前言 本章内容是android.widget.AdapterView.OnItemClickListener,版本为Android 2.3 r1,翻译来自"麦子",欢迎大家与他交流 ...

  5. GDI+入门——带你走进Windows图形的世界

    一.GDI+基础 1.GDI+简单介绍 GDI+是微软的新一代二维图形系统,它全然面向对象,要在Windows窗口中显示字体或绘制图形必需要使用GDI+.GDI+提供了多种画笔.画刷.图像等图形对象, ...

  6. dedecms的入门使用

    前段时间(其实也很远了)一直在学习dedecms,这里对前段时间的学习做一个总结. dedecms学习网址:http://help.dedecms.com/v53

  7. 一个简单链表的C++实现

    /* LList.cpp * Author: Qiang Xiao * Time: 2015-07-12 */ #include<iostream> using namespace std ...

  8. python之列表生成式

    列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式. 1,比如:要生成list [1, 2, 3, 4, 5, 6, 7, 8, 9, ...

  9. C++改变编程入口为main函数

    1, 你用vc建了一个控制台程序,它的入口函数应该是main, 而你使用了WinMain. 2.  你用vc打开了一个.c/.cpp 文件,然后直接编译这个文件,这个文件中使用了WinMian而不是m ...

  10. BZOJ 1599: [Usaco2008 Oct]笨重的石子( 枚举 )

    直接枚举 ------------------------------------------------------------------------------- #include<cst ...