首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >node.js webtorrent通过磁性链接收集所有文件

node.js webtorrent通过磁性链接收集所有文件
EN

Stack Overflow用户
提问于 2016-05-16 08:59:52
回答 1查看 1.3K关注 0票数 1

我以前没有用过node.js。

有一个带有磁铁链接列表的.txt文件。我想写一个包含在这些链接中的所有文件的列表的json文件。

代码语言:javascript
复制
var WebTorrent = require('webtorrent');
var fs = require('fs');
var client = new WebTorrent();
var array = fs.readFileSync('yop.txt').toString().split("\n");
i = 0;
while (i < array.length) {
//console.log(array[i]);
var magnetURI = array[i];
n = 0;
client.add(magnetURI, function (torrent) {
    torrent.files.forEach(function (file) {
        //console.log( file.name)
        jsonString = JSON.stringify({'book': file.name});
        fs.appendFile("data.json", jsonString, function (err) {
            if (err) {console.log(err);} else { n++ }
        });
        if (n == torrent.files.length) {i++ }
    })
})

}

when run gives the following error

对于如此糟糕的代码,我很抱歉。

EN

回答 1

Stack Overflow用户

发布于 2016-05-17 01:34:27

代码语言:javascript
复制
var WebTorrent = require('webtorrent')
var fs = require('fs')
var stream = fs.createWriteStream("2.txt");
var client = new WebTorrent()
var array = fs.readFileSync('yop.txt').toString().split("\n");

i = 0;

function parseMagnet (uri){

    var magnetURI = uri[i]
    console.log(magnetURI)
    client.add(magnetURI, function (torrent) {
      torrent.files.forEach(function (file) {
        writeStr = (uri[i]+ '\n'+ file.name+ '\n');
        stream.write(writeStr);
       console.log(file.name)       
      });
       console.log('Done !') 
       console.log(i)
       i += 1          
       parseMagnet(array);
       client.remove(magnetURI);
    })

}

parseMagnet(array)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37245305

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档