Created
October 25, 2016 20:10
-
-
Save wboykinm/b79873f829388495f158df3b2f4bdfbf to your computer and use it in GitHub Desktop.
Planet Harvester - bulk-download images from the Planet gallery: https://www.planet.com/gallery/
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// USAGE node index.js <path to target local storage> <type ("thumb", "geotiff", "full", "web")> | |
'use strict' | |
let fs = require('fs') | |
let request = require('request') | |
let async = require('async') | |
let localPath = process.argv[2] | |
let imageType = process.argv[3] | |
let planetUrl = 'https://www.planet.com/gallery.json' | |
let planetList, suffix | |
if (imageType === 'geotiff') { | |
suffix = '.tif' | |
} else { | |
suffix = '.jpg' | |
} | |
request(planetUrl, function(error, response, body) { | |
if (!error && response.statusCode == 200) { | |
planetList = JSON.parse(body) | |
} else { | |
console.log('failed') | |
} | |
async.eachSeries(planetList, function (image, callback) { | |
if (fs.existsSync(localPath + image.slug + suffix)) { | |
console.log(image.slug + ' has already been saved') | |
} else { | |
let acquisitionDate = image.acquisition_date.substring(0,9) | |
if (image.images[imageType]) { | |
console.log('Saving ' + image.images[imageType]) | |
request(image.images[imageType]).pipe(fs.createWriteStream(localPath + image.slug + '_' + acquisitionDate + suffix)) | |
callback(); | |
} | |
} | |
}, function (err) { | |
if (err) { throw err; } | |
console.log('Got them all'); | |
}); | |
}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"name": "planet-harvester", | |
"version": "0.1.0", | |
"description": "A module for bulk-downloading images from the Planet gallery: https://www.planet.com/gallery/", | |
"main": "index.js", | |
"author": "bill@faraday.io", | |
"license": "ISC", | |
"dependencies": { | |
"async": "^2.1.2", | |
"https": "^1.0.0", | |
"request": "^2.75.0" | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment