Chrome DevTools。自动将控制台输出保存到文件

时间:2018-10-07 21:09:24

标签: javascript google-chrome-devtools

我尝试从网页获取文本内容。例如Google.com

我在控制台上编写:

$ ('#SIvCob').innerText

并获得:

"Google offered in: русский"

这是我所发现的文字。现在,我想将其保存到文件(.txt)。

两分钟:我搜索的不仅只有一项,实际上是7到10。而且,每秒刷新一次!我去写一个循环。

我了解copy()函数,并在控制台上单击鼠标右键,然后单击“另存为”,但是我需要一个CODE,它将自动执行此操作。

谢谢。

1 个答案:

答案 0 :(得分:0)

浏览器没有API可以写入文件系统,因为这会带来安全风险。但是您可以使用Nodejs及其File System API来为您编写文本文件。

您还需要使用HTTP API来获取Web内容。而且,您还需要解析HTML,可以使用fast-html-parser或您选择的任何其他模块来完成。 (high5,htmlparser,htmlparser2,htmlparser2-dom,hubbub,libxmljs,ms / file,parse5等)

 var http = require('http');
 var fs = require('fs');
 var parser = require('node-html-parser');
 var options = {
   host: 'www.google.com',
   port: 80,
   path: '/index.html'
 };
 var file = '/path/to/myFile.txt';
 http.get(options, function(res) {
   res.setEncoding('utf8');
   var body = ''; 
   res.on('data', function (chunk) {body += chunk});
   res.on('end', function () { 
     var dom = parser.parse(body);
     var text = dom.querySelector('#SIvCob').text;
     fs.writeFile(file, text, function (err) {
       if (err) throw err;
       console.log('The file has been saved!');
     });
   });
 });