Node.js http: Parse "index of"

Node.js http: Parse "index of"

本文关键字:quot index of Parse js http Node      更新时间:2023-09-26

我需要编写一个 Node.js 函数,在官方网站上查找所有可用的 Node.js 版本。为此,我想接收此链接的内容:https://nodejs.org/download/release/,但以数组的形式。有没有办法通过某个模块自动接收和解析可用的 URL,或者我是否需要通过http请求站点,然后以某种方式手动解析内容,如果是这样,如何?

正如rahilwazir所建议的那样,您可以使用不同的URL来为您提供JSON。

var request = require('request');
request( 'https://raw.githubusercontent.com/nodejs/nodejs.org/master/source/versions.json', 
       function(err, resp, json) {
          if (err) return console.error(err);
          var data = JSON.parse(json);
          // Do what you need here
       };
);

如果你真的想抓取你提到的HTML页面,你可以使用以下,从 http://maxogden.com/scraping-with-node.html 复制粘贴(和改编)

var $ = require('cheerio');
function gotHTML(err, resp, html) {
  if (err) return console.error(err);
  var parsedHTML = $.load(html);
  // get all a tags and loop over them
  var links = parsedHTML('a').map(function(i, link) {
    return $(link).attr('href');
  });
}
request('https://nodejs.org/download/release/', gotHTML);