用 nw.js 做数据采集可以吗?比如点击一个按钮,自动打开某个网站,并获取指定数据,再返回自己的网站。
目前只实现到打开网站:
nw.Window.open('http://www.qq.com/', {}, (win)=>{
win.showDevTools();
win.on('loaded', function() {
// 这一句执行正常, 代表获取数据问题不大。
win.eval(null, "alert('asd')");
// 但是 我想用 nw.require 载入 js 却会导致程序崩溃
// win.eval(null, "nw.require('http://tmdmphp.com/xxx.js')");
// 一般 nw.js 程序 可以这样传数据。
// nw.global.aa = 111;
// alert(nw.global.aa);
// 但是这一句会导致程序直接关闭,
win.eval(null, "nw.global.aa = 111");
alert(nw.global.aa);
});
});
获取数据我想应该问题不大。
只是 不知道有没有更便捷的方法加载 js。
不然只能 document.createElement('script')
了
主要问题是 获取到数据后 怎么传到自己网站的页面呢?nw.global
在 win.eval
里用不了。localStorage
的话也只能存在 www.qq.com 的域名下。opener
的话 显然也不行,并不是用普通的 window.open
打开的。
难道 我不应该用 nw.js
来实现数据采集???
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
没有用过nwjs,
建议换一个 Electron
效率太低了,建议直接写css选择器开发爬虫,用node.js和python都可以,有很多有用的库可以选择