1

wget过去常常从网上抓取一些东西,但我不想关注页面的一部分。我想我可以设置一个代理来删除我不想被处理的网页部分,然后再将其返回给 wget,但我不确定我将如何实现这一点。

是否有代理可以让我轻松修改 python 或 node.js 中的 http 响应?

4

2 回答 2

6

有几种方法可以实现这一目标。这应该让你开始(使用 node.js)。在以下示例中,我将获取 google.com 并将所有“google”实例替换为“foobar”。

// package.json file...
{
  "name": "proxy-example",
  "description": "a simple example of modifying response using a proxy",
  "version": "0.0.1",
  "dependencies": {
    "request": "1.9.5"
  }
}

// server.js file...
var http = require("http")
var request = require("request")
var port = process.env.PORT || 8001

http.createServer(function(req, rsp){
  var options = { uri: "http://google.com" }

  request(options, function(err, response, body){
    rsp.writeHead(200)
    rsp.end(body.replace(/google/g, "foobar"))
  })

}).listen(port)

console.log("listening on port " + port)
于 2011-05-06T20:32:36.123 回答
0

在 nodejs 中,我会 fork node-http-proxy并根据我的需要自定义代码。

恕我直言,从头开始编写 http 代理要简单得多。

于 2011-05-06T21:40:06.430 回答