【发布时间】:2012-01-13 22:18:21
【问题描述】:
我对 Node.js 很陌生,所以如果我不知道我在说什么,请提前道歉。
我正在尝试从 ASU 的课程目录 (https://webapp4.asu.edu/catalog/) 中删除一些课程,并使用 Zombie、Node.IO 和 HTTPS api 进行了多次尝试。在这两种情况下,我都遇到了重定向循环。
我想知道是不是因为我没有正确设置标题?
以下是我使用的示例代码(不是 Zombie/Node.IO):
var https = require('https');
var option = {
host: 'webapp4.asu.edu',
path: '/catalog',
method: 'GET',
headers: {
'set-cookie': 'onlineCampusSelection=C'
}
};
var req = https.request(options, function(res) {
console.log("statusCode: ", res.statusCode);
console.log("headers: ", res.headers);
res.on('data', function(d) {
process.stdout.write(d);
});
});
澄清一下,我一般不会遇到使用 Node.js 进行抓取的问题。然而,更具体地说,是 ASU 的课程目录给我带来了麻烦。
感谢你们能给我的任何想法,谢谢!
更新:如果我使用从 Chrome/FF 获得的 JSESSIONID 创建一个 cookie,我的请求将成功通过。有没有办法让我请求/创建一个 JSESSIONID?
【问题讨论】:
-
这是一篇关于如何使用 Node.js 抓取网页的完整文章:net.tutsplus.com/tutorials/javascript-ajax/…
标签: javascript node.js screen-scraping zombie.js