Un programme en Python pour télécharger les données Sentinel
=>
Note : L’interface APIHUB/SCIHUB présente de nombreuses restrictions d’accès, comme par exemple le fait de n’accepter que des comptes créés avant le 21 décembre 2015. La plateforme PEPS, du CNES, fournit un accès beaucoup plus facile. J’ai créé un petit programme similaire à celui ci-dessous, pour télécharger des données sans cliquer. L’interface du serveur Scihub pour les données Sentinel vous permet de faire des recherches dans le catalogue ou de télécharger les données par de simples requêtes HTTPS. Par exemple, pour rechercher les produits de S2 présents dans le catalogue, essayez simplement les exemples ci-dessous :
- pour sélectionner tous les produits qui contiennent Toulouse :
- vous pouvez vous authentifier avec votre mot de passe scihub ou avec « guest », « guest », mais ce compte ne vous permet pas de télécharger les donnes (pas plus de deux téléchargements simultanés avec un même compte). Et de plus, l’ESA dit que :
- The API Hub Access is currently available only for users registered before the 20th of November 12:00 UTC, the user credentials as of the 20th November are valid to access this site.
- vous devez seulement connaître les coordonnées Lat, Lon (dans cet ordre) de votre site.
- vous pouvez vous authentifier avec votre mot de passe scihub ou avec « guest », « guest », mais ce compte ne vous permet pas de télécharger les donnes (pas plus de deux téléchargements simultanés avec un même compte). Et de plus, l’ESA dit que :
- pour sélectionner tous les produits qui contiennent Toulouse insérés dans le catalogue après le premier décembre 2015 :
La routine Python, accessible par le lien à la fin de cet article, permet de récupérer sans un clic les données de Sentinel-1 et Sentinel-2 (et probablement bientôt Sentinel-3), depuis le site de distribution Scihub. Vous me connaissez, je l’ai surtout testé avec Sentinel-2. La routine Sentinel_download.py fonctionne sous linux et s’appuie sur l’utilitairede tléchargement wget. Il pourrait marcher sous windows, mais peobablemenent moyennant quelques adaptations, et je ne connais pas windows. Si quelqu’un veut le faire, le dépot de l’outil sous githuib est ouvert. L’outil similaire Landsat-download a ainsi reçu de nombreuses contributions. Comme l’outil fait des recherches sur le catalogue Sentinel, ivous pouvez sélectionner les donnes par date, type, par coordonnées géographiques et même, pour Sentinel-2, par le taux de couverture nuageuse (en faisant confiance au pourcentage fourni dans les produits de niveau 1C). Le Readme file sur le depot Github donne de nombreux exemples, ici, je n’en fournis qu’un :
python Sentinel_download.py -s S2 --latmin 43 --latmax 46 --lonmin -1 --lonmax 2 -a apihub.txt -o 94 -m 25 -d 20151206
Et voici ce que signifient les options :
- -s définit le satellite (S2, S2A, S2B, S1, S1B)
--latmin 43 --latmax 46 --lonmin -1 --lonmax 2 definit un rectangle en degrés décimaux avec lequel les produits doivent avoir une intersection (vous pouvez aussi demander un point avec les options --lat et --lon)
- a apihub.txt fournit le compte et mot de passe d'authentification (guest guest ne fonctionne que pour les consultations du catalogue)
-o est le numéro de trace (si vous n'en voulez qu'une)
-m 25 est le pourcentage maximal de nuages accepté (25%)
- -d 20151206 est le début de la période (le 6 décembre), et le téléchargement des données va jusqu’à la date courante, à moins que vous n’utilisiez l’option -f pour définir la date finale avec l’option -f
Donc, pour utiliser cet outil, allez le cloner sur le dépôt github de sentinel-download.