导航:首页 > 编程语言 > nodephantomjs

nodephantomjs

发布时间:2023-07-24 23:28:32

A. 怎么在nodejs里面操作DOM

如果抄你想建立的DOM可以使用jsdom 。袭

还有CHEERIO ,它具有jQuery的界面,比jsdom其快了很多。

你可能会想看看htmlparser2 ,这是一个流分析器,并根据它的基准,这似乎是比别人快,也没有DOM默认。它也可以产生DOM ,因为它也捆绑了创建一个DOM的处理程序。这是一种用于后面CHEERIO解析器。

如果你要解析的HTML抓取,你可以使用YQL 。这里是它的一个节点模块。 YQL我觉得这是最好的解决办法,如果你的HTML是从一个静态的网站,因为你是靠服务,而不是你自己的代码和处理能力。但要注意,如果该页面是由网站的robot.txt的禁止是行不通的, YQL将无法使用它。

如果你想抓取的网站是动态的,那么你应该使用一个无头的浏览器一样phantomjs 。也看看casperjs ,如果你正在考虑phantomjs 。你可以从节点SpookyJS控制casperjs 。

除了phantomjs有zombiejs 。不同,不能嵌入的NodeJS phantomjs , zombiejs仅仅是一个节点的模块。

B. 如何用nodejs去做网页截图

很多情况下,我们都需要在电脑上做一些截图的操作。有哪些常用的截图方法呢?
1、按键盘上的print screen 键:这个方法很麻烦,估计很少人用吧!
如果有如下需求:
1、截取一个网页,也就是一个滚动窗口的所有内容;
2、需要重复截取屏幕上的某一个固定区域,比如一个窗口截图一次后,做了一些修改,要重复截取一次,标识改变的地方;
3、在截图上画矩形框、气泡框、箭头,加汉字等
这样的需求,QQ截图虽然可以实现,但是那就太麻烦了,所以今天给大家推荐一款快捷好用的截图软件,叫做PicPick
软件安装包不大,开启后占用约25MB内存,所以即使设定为开机启动,也不会造成太大的性能影响。同时,这款软件原生支持全中文,并且对于个人及家庭用户是免费的,也不用考虑是否需要汉化或者破解之类的问题。
工具/原料
PicPick
windows
软件主界面介绍
1首先需要下载此软件,截止2013-11-06,最新的版本应该是3.2.8。安装过程中,会要求安装另一个系统优化的软件,大家直接拒绝就可以了
2安装完毕后,此软件界面如图,主要的功能也都体现在主界面上了。
右边的实用工具就不多介绍了,一看就明白,支持“屏幕取色”、“调色”、“放大镜”、“标尺”、“坐标轴”、“量角器”和“白板”功能。绝对是设计师和PPTer的好帮手。
主界面左下方的截图工具才是重点,介绍如下:
1、全屏:当前整个屏幕
2、窗口控件:使用这个截图功能的时候,会出现一个红框,单击鼠标,红框范围内的窗口就会被截取了
3、滚动窗口:比如一个很长的网页,支持一次性截取为图片。虽然很多浏览器都支持,但是这个软件还支持比如IE之类的浏览器,很实用。
4、矩形区域:最常用的,截取一个矩形框中的内容
5、固定区域:截取某一个固定区域
6、任意形状:比如截图一个圆形啊、心形啊之类的都可以
7、重复上次截取:这才是真正的最实用的功能,可以把上一次截取的区域再截取一次,超级好用
截图步骤
1PicPick软件截图,有如下的方法:
1、主界面截图:就是在如下界面上,选择相应的功能
2、在工具栏托盘中,单击PicPick的图标,选择“截取屏幕”
3、使用快捷键,具体的键位设定请参见软件的设置界面,图片中是我最常用的功能和自定义的快捷键
4、在编辑图片的窗口,左上角的文件菜单中,选择截取屏幕
图片修改
1截图之后会自动打开图片编辑的窗口,如图,最常用的文字、矩形框等工具都在界面最上方,使用方法也很简单,单击相应的图形即可
其他设置
1建议勾选该软件的如下设置,会让软件更好用
2建议让软件开机自动启动即可,因为不占太多内存,功能也足够强大

C. nodejs调用phantomjs时,phantomjs.path为null,应该要怎么处理

官方案例 :
Running via node

The package exports a path string that contains the path to the
phantomjs binary/executable.

Below is an example of using this package via node.

var path = require('path')
var childProcess = require('child_process')
var phantomjs = require('phantomjs-prebuilt')
var binPath = phantomjs.path

var childArgs = [
path.join(__dirname, 'phantomjs-script.js'),
'some other argument (passed to phantomjs script)'
]

childProcess.execFile(binPath, childArgs, function(err, stdout, stderr) {
// handle results
})
或者。。。

to see : https://github.com/Medium/phantomjs
去看源码18行 => https://github.com/Medium/phantomjs/blob/master/lib/phantomjs.js#L18

/**
* Where the phantom binary can be found.
* @type {string}
*/
try {
var location = require('./location')
exports.path = path.resolve(__dirname, location.location)
exports.platform = location.platform
exports.arch = location.arch
} catch(e) {
// Must be running inside install script.
exports.path = null
}
你可以把 catch 的 e 打出来看看是什么错误

D. 怎么使用node.js进行快速截图

使用nodejs进行截图,推荐使用phantomjs实现。phantomjs是一个无头浏览器,能够实现截屏,网络专请求监测,自动化测属试等功能。具体所有例子可以在phantomjs官网找到,下面给一个官网截屏的实例:

//index.js
varpage=require('webpage').create();
page.open('
,function(){
page.render('github.png');
phantom.exit();
});
//命令行调用
phantomjsindex.js

通常也会用casperjs(webkit)来实现截图,它有更好用的api封装方便实现各种操作。在Gecko内核下则使用slimerjs实现。

不过google官方团队也出了针对chrome的无头浏览器工具puppeteer,现在版本是0.9.0,这款工具是单独针对Chrome浏览实现的,提供了强大但是简单实用的api。

以上关键词 phantomjs、casperjs、slimerjs及puppeteer均可在gitHub上找到,且可以自行下载包查看示例。

E. 以nodejs为后台的话,能将页面文字转化为图片吗

可以看看 node-canvas模块,用canvas将文字转换为图片输出,可以实现验证码等功能。

如果是网页转图片的话,可以看看phantomjs

阅读全文

与nodephantomjs相关的资料

热点内容
ps怎么移植文件 浏览:443
传奇补丁文件说明 浏览:513
奥维地图怎么设置网络叠加 浏览:407
linux加载库文件so失败 浏览:714
大家都想要的app 浏览:58
程序员比特币 浏览:568
mysqlfrm是什么文件 浏览:665
win10点击文件夹声音消失 浏览:963
苹果手机空白文件名 浏览:833
linuxmv覆盖合并文件夹 浏览:932
不开访客网络怎么联网 浏览:631
win10的软件卸载 浏览:779
crv汽车自带网络怎么打开 浏览:973
食品原材料到什么网站购买 浏览:649
一年级的小孩子学编程怎么样 浏览:863
ic考勤机怎么导出数据 浏览:922
网站设计编程如何开始学习 浏览:749
淘宝代码隐藏导航不见了 浏览:7
macbookpro如何修改文件内容 浏览:965
java稳定排序 浏览:53

友情链接