下载整个NPM包列表

时间:2018-01-12 03:02:00

标签: npm

这个问题是NPM特有的。

几年前,我编写了一个名为qnp的工具,可以下载整个npm包列表,然后非常快速地执行本地查询,例如每个查询0.2秒。这允许对现代编程世界进行非常有趣的研究,按作者姓名,描述,标签等进行过滤,执行数百个查询,检查结果,分析,创意,进行更多查询。官方客户端很好,但不允许您以思考的速度进行快速查询。这是我的问题:

大约一年前,NPM的注册表元数据DB的位置被放弃了,现在它返回一个空文件。我现在如何下载/获取整个元数据列表?我至少需要那些字段:title / author / description / keywords / date。 (可选)下载计数,依赖项列表,版本。

以前是以前工作过的代码:

   var request  =  http.get({
         host: 'registry.npmjs.org',
         path: '/-/all/static/all.json',
         headers: {
            'Accept-Encoding': 'gzip, deflate'
         }
      }, function (a,b,c) {
      var done  =  0 ; var all  =  parseInt(a.headers['content-length'])
      a.on('data', function (a,b,c) {
         done += a.length
         process.stdout.write( '\r' + (done / (all/100)).toFixed(2)+'%  ' )
      })
      console.log('download started') 
      a.pipe(S)
      S.on('finish', function (a,b,c) {
         console.log('download complete') 
         S.close(f)
      })
   })

0 个答案:

没有答案