phantomjs有人使用吗, 怎么样?

2013-06-12 22:58:33 +08:00
 leohxj
首先问一下,windows下如何安装?为什么我通过npm安装不了,直接下载.exe需要加入到PATH中吗?
这个工具主要的作用和用途是什么呢?
11995 次点击
所在节点    JavaScript
18 条回复
seeker
2013-06-12 23:32:59 +08:00
用过,不过不是windows下用的。
官方说是Headless WebKit with JavaScript API。
所谓headless就是没有菜单,收藏夹,没有窗口。
with javascript api就是可以通过js来操作。

经常拿来做web测试用。
我用它来做过简单的爬虫,它可以到页面植入自己的js,于是可以用jquery的css选择器来抓去想要的内容。为啥不直接抓,非得用它?因为页面内容如果是ajax load的直接抓就拿不到了。
keakon
2013-06-13 00:47:00 +08:00
用过,发现抓出来的图比 Chrome 的文字浅一些,就换掉了。
maja
2013-06-13 08:23:30 +08:00
phantomjs不错的,做一些抓图、测试之类的很好。中文装wqy就可以

@keakon 可以修改字体

@seeker ajax load的可以设置延迟启动,在.ready之后在抓,或者等到你需要的dom存在了在抓,都可以。

无耻的广告: 我的 http://www.screenshotbot.com 就用的这个
RelativeLayout
2013-06-13 09:57:50 +08:00
可以试一下casperjs 可以说是phantomjs的库把。
leohxj
2013-06-13 10:12:42 +08:00
@keakon
@RelativeLayout
@maja
大家在什么平台下?我windows8+node 1.10,通过npm安装不了。。。
maja
2013-06-13 10:14:17 +08:00
@leohxj hmm, phantomjs? 直接下载binary的安装包就可以了啊
leohxj
2013-06-13 11:15:52 +08:00
@maja 然后把phantomjs.exe添加到PATH中吗?
RelativeLayout
2013-06-13 11:20:40 +08:00
@leohxj 我在mac下的。你再研究下windows下的装法。
seeker
2013-06-13 12:27:26 +08:00
@maja 我没说清楚。我的意思是:传统的爬虫,不好抓ajax的。我知道如何用phantomjs抓ajax load的。
leohxj
2013-06-13 12:54:59 +08:00
@RelativeLayout 你mac下直接从官网下载的吗,还是通过npm安装的?
TempAccount
2013-06-13 13:08:47 +08:00
phantomjs是一个和node.js无关的独立程序, 你怎么想到用npm安装的... 直接上官方下可执行文件就行了
leohxj
2013-06-13 13:33:41 +08:00
@TempAccount 因为node也有模块, grunt中会使用到。所以如果我加载了phantomjs到PATH中,npm又安装了同名的命令,不知道grunt调用的时候会不会冲突。
em91
2013-06-13 15:36:06 +08:00
感觉casperjs的写法更舒服一些,基于phantomjs
thursday
2013-06-13 18:12:28 +08:00
casperjs 的在linux 上乱码 支付框框的 问题 搞死了快
keakon
2013-06-13 19:37:46 +08:00
@leohxj OS X、Debian 和 Ubuntu 都试过。

@maja 设了字体,就是浅一点。
AlfredZhao
2013-06-13 21:22:45 +08:00
1楼正解...我用它做过截图的,不过在截图上表现不如cutycapt
duhastmich
2013-06-26 21:27:36 +08:00
老早之前一个项目里用它来生成pdf。。服务器上没有X,设置起来略麻烦, 只是做测试的话,还有个zombiejs 不是基于phantomjs的
bobkingdom
2014-09-23 12:56:24 +08:00
phantomjs怎么支持指定字体截图啊?网页是微软雅黑,截图出来的却是别的字体,还有大有小。这应该是个高分题吧

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/72174

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX