Javascript 将DOM事件附加到本地文件

Javascript 将DOM事件附加到本地文件,javascript,file,dom,google-chrome-extension,firefox-addon,Javascript,File,Dom,Google Chrome Extension,Firefox Addon,我有一个非常复杂的站点,要从中获得我想要的东西,最简单的方法就是记录DOM节点的添加。在很长一段时间里。我当前的代码: var observer = new MutationObserver(function(mutationList) {     for (var mutation of mutationList) {         for (var child of mutation.addedNodes) {             appendtofile(path,childasst

我有一个非常复杂的站点,要从中获得我想要的东西,最简单的方法就是记录DOM节点的添加。在很长一段时间里。我当前的代码:

var observer = new MutationObserver(function(mutationList) {
    for (var mutation of mutationList) {
        for (var child of mutation.addedNodes) {
            appendtofile(path,childasstringorsomething);
        }
    }
});

observer.observe(document, {childList: true, subtree: true});
嗯,不可能用javascript“附加文件”。扩展(至少在firefox/chromium中)似乎也受到文件大小的严重限制,如果存在的话,会被沙盒放到更糟糕的存储解决方案中。我当前的方法是发布到本地端口并使用
ncat-k-l 1234>>test.txt进行监听,但是这是非常不理想的


做这件事最简单或最干净的方法是什么?

你说的尺寸是多少?你看过indexedDb吗?本地存储是否足以满足应用程序的需要,还是需要远程存储?长时间内,本地存储的文本数应该很容易达到每天两gb。我希望有一些像日常文本文件,并从那里妥善存档。IndexedDB看起来和我需要的完全一样,但是浏览器似乎仍然有大小限制,并且强制执行了非常丑陋/不可接受的自动删除功能。我找不到任何使这个更稳定的例子。每天备份/清理/导出。它必须基于浏览器吗?熟悉电子应用程序吗?基本上,节点服务器和chrome浏览器捆绑在桌面应用程序中。由于节点服务器具有比浏览器更多的文件/db访问权限。扩展可以使用nativeMessaging与作为本机操作系统进程运行的实用程序通信。该实用程序显然能够以任何方式编写文件。现有的nativeMessaging主机甚至运行node.js,请看一些例子。@charlietfl我不知道任何electron,但我喜欢这个想法。因此我尝试了,用
view.webContents.loadURL
加载站点,并用
view.webContents.executeJavaScript
附加观察者。这是可行的,但是观察者再一次被困在一个孤立的环境中,我不知道如何继续。