Posted at

node.js でインターネット上の画像をダウンロード

More than 3 years have passed since last update.


request で取得、fs で保存してみる

バイナリを壊さないように注意する。


  • request でのエンコーディング指定は {encoding: null}

  • fs でのエンコーディング指定は 'binary'


package.json

{

"dependencies": {
"request": "*",
"fs": "*"
}
}


test.js

var request = require('request');

var fs = require('fs');

var url = 'https://www.google.co.jp/images/nav_logo195.png';

request(
{method: 'GET', url: url, encoding: null},
function (error, response, body){
if(!error && response.statusCode === 200){
fs.writeFileSync('a.png', body, 'binary');
}
}
);



実行

npm install

node test.js


参考