我編寫了一個node.js應用程序,該應用程序實時顯示來自Instagram的具有特定主題標籤的圖片。該應用程序工作得很好,非常快。我想添加的是,可以將所有顯示的圖像保存到特定文件夾(在我的計算機上)進行打印(然後添加一個腳本來執行此操作)。使用node.js將instagram照片保存到本地文件夾中
你知道是否有一個庫允許我將這些圖像保存到文件夾中嗎?謝謝
我編寫了一個node.js應用程序,該應用程序實時顯示來自Instagram的具有特定主題標籤的圖片。該應用程序工作得很好,非常快。我想添加的是,可以將所有顯示的圖像保存到特定文件夾(在我的計算機上)進行打印(然後添加一個腳本來執行此操作)。使用node.js將instagram照片保存到本地文件夾中
你知道是否有一個庫允許我將這些圖像保存到文件夾中嗎?謝謝
事實上,它是一張Instagram的照片,你實時得到它並不是真的很重要的照片保存在本地硬盤上。
無論你使用任何NPM模塊或者簡單地使用自己的代碼在末尾部分,你應該有一個URL的照片是這樣的:
"standard_resolution": {
"url": "http://distillery.s3.amazonaws.com/media/2011/02/01/34d027f155204a1f98dde38649a752ad_7.jpg",
"width": 612,
"height": 612
}
所以,你可以簡單地使用:
var http = require('http-get');
var options = {url: 'http://distillery.s3.amazonaws.com/media/2011/02/01/34d027f155204a1f98dde38649a752ad_7.jpg'};
http.get(options, '/path/to/where/you/want/myPic1.jpg', function (error, result) {
if (error) {
console.error(error);
} else {
console.log('Photo successfully downloaded and saved at: ' + result.file);
}
});
或者我看到這個太(我不記得,但我把它當作片段):
var http = require('http')
, fs = require('fs')
, options
options = {
host: 'www.google.com'
, port: 80
, path: '/images/logos/ps_logo2.png'
}
var request = http.get(options, function(res){
var imagedata = ''
res.setEncoding('binary')
res.on('data', function(chunk){
imagedata += chunk
})
res.on('end', function(){
fs.writeFile('logo.png', imagedata, 'binary', function(err){
if (err) throw err
console.log('File saved.')
})
})
})
由於這是一個http請求,響應時間取決於很多因素(從互聯網的速度,Instagram服務器響應時間,一直到硬盤速度)。
所以,如果你可以用Redis的或其他消息隊列工具隊列可以確保所有的照片,最終,如果你的應用程序是24x7全天候運行,有很多的訂閱將被保存在本地。
祝你好運!
更新:我發現的URL,我的代碼片段:Writing image to local server
欣賞這些傢伙對他們的代碼!我剛纔指出。