用 nw.js 做数据采集可以吗?比如点击一个按钮,自动打开某个网站,并获取指定数据,再返回自己的网站。

发布于 2022-09-03 13:12:20 字数 917 浏览 20 评论 0

目前只实现到打开网站:

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.globalwin.eval 里用不了。
localStorage 的话也只能存在 www.qq.com 的域名下。
opener 的话 显然也不行,并不是用普通的 window.open 打开的。

难道 我不应该用 nw.js 来实现数据采集???

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

十年九夏 2022-09-10 13:12:21

没有用过nwjs,

建议换一个 Electron

你的笑 2022-09-10 13:12:21

效率太低了,建议直接写css选择器开发爬虫,用node.js和python都可以,有很多有用的库可以选择

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文