Node.js http: Parse "index of"
Node.js http: Parse "index of"
我需要编写一个 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);
相关文章:
- Emberjs应用程序加载在除Index之外的所有路由上
- 分析高度属性时出现意外值{{specs.height}}.index.html
- 主干模板:index.jst.eco到index.jst.ejs
- 铬:“;未捕获的语法错误:意外的标记:"
- 将 jQuery 代码添加到 Index.aspx 页面
- 可以设置“;文件名"发生错误时显示的内联脚本标记的
- JS表单提交"无法使用Chrome数据保护程序加载此页面.尝试重新加载页面.调试信息:POST CISmtuK
- 检测电话窃听,即:<a href="电话:xxx">在UIWebview上
- 使用“+="操作人员
- //而不是在src=“”上使用http://"属性
- "未捕获的语法错误:意外的标记}"
- 可以<脚本类型=“;text/javascript”>window.location=“/"</
- "实例范围”;TypeScript类的getter/setter
- Javascript复选框函数:;缺少:在属性id之后"
- "“;变量未引用正确的对象
- "日期“;AJAX请求返回的类型值未定义
- AngularJS-需要在index.html页面中访问来自服务的数据
- 更改基于它的Select OPTION's INDEX(Jquery)
- 得到"TypeError:无法读取属性'filename'未定义的“;调用“npm start
- Vue.js"track-by-$index”;,如何单独呈现列表项