php phantomjs 截屏,phantomjs截图

php phantomjs 截屏,phantomjs截图废话不多说,直接上代码。功能:随便截取一个url页面:https://www.baidu.com/s?word=phantomjs+%E6%88%AA%E5%9B%BE&tn=43061099_196_hao_pg&ie=utf-8&ssl_sample=hao_1phantomjs的js环境test.jssystem=require(‘system’)address…

大家好,又见面了,我是你们的朋友全栈君。

废话不多说,直接上代码。

功能:随便截取一个url页面:

https://www.baidu.com/s?word=phantomjs+%E6%88%AA%E5%9B%BE&tn=43061099_196_hao_pg&ie=utf-8&ssl_sample=hao_1

phantomjs的js环境test.js

system = require(‘system’)

address = system.args[1];//获得命令行第二个参数 接下来会用到

//console.log(‘Loading a web page’);

var page = require(‘webpage’).create();

var url = address;

//console.log(url);

page.open(url, function (status) {

//Page is loaded!

if (status !== ‘success’) {

console.log(‘Unable to post!’);

} else {

//console.log(page.content);

//var title = page.evaluate(function() {

// return document.title;//示范下如何使用页面的jsapi去操作页面的 www.oicqzone.com

// });

//console.log(title);

console.log(‘ok’);

page.render(‘e:/phantomjs/example.png’);

}

phantom.exit();

});

java调用外部程序代码:

public class PhantomTest {

public static String getAjaxCotnent(String url) throws IOException {

Runtime rt = Runtime.getRuntime();

Process p = null;

try {

p = rt.exec(“D:/phantomjs-2.0.0-windows/bin/phantomjs.exe e:/phantomjs/test.js “+url);

} catch (IOException e) {

e.printStackTrace();

}

InputStream is = p.getInputStream();

BufferedReader br = new BufferedReader(new InputStreamReader(is));

StringBuffer sbf = new StringBuffer();

String tmp = “”;

while((tmp = br.readLine())!=null){

sbf.append(tmp);

}

System.out.println(“a”+sbf);

System.out.println(sbf.toString());

return sbf.toString();

}

public static void main(String[] args) throws IOException {

getAjaxCotnent(“https://www.baidu.com/s?word=phantomjs+%E6%88%AA%E5%9B%BE&tn=43061099_196_hao_pg&ie=utf-8&ssl_sample=hao_1”);

}

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/159373.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • PCA降维算法总结以及matlab实现PCA(个人的一点理解)

    PCA降维算法总结以及matlab实现PCA(个人的一点理解)PCA的一些基本资料最近因为最人脸表情识别,提取的gabor特征太多了,所以需要用PCA进行对提取的特征进行降维。本来最早的时候我没有打算对提取的gabor特征进行降维,但是如果一个图像时64*64,那么使用五个尺度八个方向的gabor滤波器进行滤波,这样提取的特征足足有64*64*5*8这么多,如果图像稍微大一点,比如12

    2022年10月25日
  • 单片机流水灯程序[通俗易懂]

    单片机流水灯程序[通俗易懂]一、流水灯实验1、设计要求P1口接8个发光二极管,烧录程序后发光二极管依次点亮2、硬件要求利用proteusIsis仿真,选择器件,AT89C51、LED-BLUE、RES3、软件设计源程序:/*********************必要变量定义******************/#include<reg51.h>#include<intrns.h>…

    2022年5月1日
  • Java字符串转集合_java集合转数组

    Java字符串转集合_java集合转数组数组转集合方法使用Arrays.asList(数组)代码如下: //定义一个字符串 Stringzhuan=”1,2,3,4,5,6,7,8,9″; //分割字符串String[]split=zhuan.split(“,”);//把数组转成集合List<String>stringList=Arrays.asList(split);//输出结果S

    2022年9月19日
  • Java Integer 与 int 深刻理解

    Java Integer 与 int 深刻理解Java Integer 与 int 深刻理解

    2022年4月24日
  • 数组和链表的区别,各有何优缺点

    数组和链表的区别,各有何优缺点链表与数组的区别(1)数组的元素个数是固定的,而组成链表的结点个数可按需要增减;(2)数组元素的存诸单元在数组定义时分配,链表结点的存储单元在程序执行时动态向系统申请;(3)数组中的元素顺序关系由元素在数组中的位置(即下标)确定,链表中的结点顺序关系由结点所包含的指针来体现。(4)对于不是固定长度的列表,用可能最大长度的数组来描述,会浪费许多内存空间。(5)对于元素的插人、删除操作非常频繁的列表处理场合,用数组表示是不适宜的。若用链表实现,会使程序结构清晰,处理的方法也较为简便。数组的优点随机

    2022年6月17日
  • nurtas aidarbekov_true image2018

    nurtas aidarbekov_true image2018Up主作为CV穷人代表,这一次想要触碰一下papers里最为活跃却又以“Huge”令穷人望而生畏的超级数据集:ImageNet中的ILSVRC2012.还记得依靠氪金“霸道总裁式”碾压一切“noise2image”的BigGAN吗?来不及时间解释了,快上车!##下载可怜穷人的BigGAN-4~8gpusversion>>gitcl…

    2022年10月9日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号