有没有一种能用 js 触发物理点击的浏览器

2015-12-12 12:06:00 +08:00
 evakiss

现在这些浏览器调试工具给的权限实在太低了,目前唯一能用 js 触发物理点击的貌似只有 phantomjs or casperjs 了,但这两个都不是可视化的浏览器,想找一款能用 js 触发物理点击的浏览器,有 UI 界面即可,求 V2ER 们推荐一下

2849 次点击
所在节点    程序员
8 条回复
offer
2015-12-12 12:53:46 +08:00
你要翻天啊。
klesh
2015-12-12 12:54:25 +08:00
nightmare(base on electron),稳定性和功能还有接口没有 phantom 丰富,但支持可视化。
evakiss
2015-12-12 13:03:14 +08:00
@klesh 谢谢, nightmare 看了一下官网,貌似不支持像 chrome 这样能够展现出网页渲染后全貌啊
klesh
2015-12-12 18:36:52 +08:00
有的,看仔细,有选项的,我试过的,会跳出一个可视窗口。 electron 本身就是一个 html app 的框架。 atom, vsc 貌似就是基于 electron 的,必须有可视界面
southwolf
2015-12-12 21:13:52 +08:00
Selenium?
qnnnnez
2015-12-13 11:01:17 +08:00
首先你得找一个长手的浏览器;)
monexus
2015-12-13 15:30:52 +08:00
electron 的 sendInputEvent() 调用的是 Chromium 的底层,如同物理触发,不过实例文档不(坑)多。
jhsea3do
2015-12-24 15:30:45 +08:00
借宝地一问,有没有人在 Linux CLI 下用 nightmare 的,似乎无效阿

下面的代码在 windows 下能跑, 在 RHEL 7 下无效呢 TAT

npm install nightmare bluebird
DEBUG=* node --harmony index.js

```javascript

// index.js

var Nightmare = require('nightmare');
var Promise = require('bluebird');

var nightmare = new Nightmare();
Promise.resolve(nightmare
.goto('http://baidu.com')
.screenshot('screenshot.png')
.evaluate(function(){
return document.title;
}))
.then(function(value){
console.log(value);
console.log('All Done!');
return nightmare.end();
})
.then(function(result){
}, function(err){
console.error(err);
});

```

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

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

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

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

© 2021 V2EX