在Node.js / Express中,如何“下载”页面并获取其HTML?

在代码中,我想下载“http://www.google.com”并将其存储在一个string中。 我知道如何在Python中的urllib做到这一点。 但是,您如何在Node.JS + Express中执行此操作?

使用node.js,你可以使用http.request方法

http://nodejs.org/docs/v0.4.7/api/all.html#http.request

这个方法是build立在节点你只需要http。

如果你只是想做一个GET,那么你可以使用http.get

http://nodejs.org/docs/v0.4.7/api/all.html#http.get

var options = { host: 'www.google.com', port: 80, path: '/index.html' }; http.get(options, function(res) { console.log("Got response: " + res.statusCode); }).on('error', function(e) { console.log("Got error: " + e.message); }); 

(来自node.js文档的示例)

你也可以使用mikeal的请求模块

https://github.com/mikeal/request

 var util = require("util"), http = require("http"); var options = { host: "www.google.com", port: 80, path: "/" }; var content = ""; var req = http.request(options, function(res) { res.setEncoding("utf8"); res.on("data", function (chunk) { content += chunk; }); res.on("end", function () { util.log(content); }); }); req.end();