nodejs爬虫下载图片失败

Hello,everybody~
我在用nodejs写爬虫的时候,想爬取图片(图片的地址:
http://img3.g.pptv.com/a/2015...但是老是提示:

<html>
<head><title>414 Request-URI Too Large</title></head>
<body bgcolor="white">
<center><h1>414 Request-URI Too Large</h1></center>
<hr><center>nginx</center>
</body>
</html>

是指请求的链接过长。但是直接点击却是可以访问到图片的,怎么回事?请问大家这个怎么解决?或者是什么原因。先谢谢了~
这个是我请求的代码~多谢了

var request = require('request');
var fs = require('fs');

var picture_url = "http://img2.g.pptv.com/a/2015/12/14500834484095.jpg";
request(picture_url).pipe(fs.createWriteStream("../../../../abc"));
阅读 4.7k
2 个回答

我利用superagent模块发起的get请求是能够正常获取到图片的。请问lz在发起请求的header或是方法?

补充:其实你只是差一个UA,爬虫请务必带上UA,不然太过明显

var request = require('request');
var fs = require('fs');

var picture_url = "http://img2.g.pptv.com/a/2015/12/14500834484095.jpg";
var options = {
  url: picture_url,
  headers: {
    'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36'
  }
};
request(options)
  .on('error', function(err) {
    console.log(err)
  })
  .pipe(fs.createWriteStream('test.png'))

把你的node爬虫代码贴出来,大家才能看出来问题的

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题