Geonames n'est pas très précis et renvoi parfois des résultats assez étonnants.
Geoportail semble être plus rigoureux : https://www.geoportail.gouv.fr/carte
Exemple de requête possible (renseigner les variables $lon et $lat) :
```
curl --referer "https://www.geoportail.gouv.fr/carte" "https://wxs.ign.fr/an7nvfzojv5wa96dsga5nk8w/alti/rest/elevation.xml?output=json&lon=$lon&lat=$lat&indent=false&crs=%27CRS:84%27&zonly=true"
```
À l'époque, j'étais vraiment pas chaud pour intégrer Geoportail en spoofant le referer, ça va clairement contre la volonté des gens qui font Geoportail.
Mais en remettant le nez dedans, j'ai découvert que leur API accepte les requêtes avec un User-Agent mis à "requests" ! (la librairie python)
Il se trouve que c'est exactement la librairie qu'on utilise dans celutz, donc ça marche sans devoir bricoler quoi que ce soit, et on peut se dire que c'est voulu de leur part d'accepter cet usage ;)
J'ai donc intégré l'API geoportail pour avoir l'altitude au sol (1832e49b1a), avec un fallback sur geonames.
À l'époque, j'étais vraiment pas chaud pour intégrer Geoportail en spoofant le referer, ça va clairement contre la volonté des gens qui font Geoportail.
Mais en remettant le nez dedans, j'ai découvert que leur API accepte les requêtes avec un User-Agent mis à "requests" ! (la librairie python)
Il se trouve que c'est exactement la librairie qu'on utilise dans celutz, donc ça marche sans devoir bricoler quoi que ce soit, et on peut se dire que c'est voulu de leur part d'accepter cet usage ;)
J'ai donc intégré l'API geoportail pour avoir l'altitude au sol (1832e49b1abf0437dbd92e3bf8d9b41985251c84), avec un fallback sur geonames.
Geonames n'est pas très précis et renvoi parfois des résultats assez étonnants.
Geoportail semble être plus rigoureux : https://www.geoportail.gouv.fr/carte
Exemple de requête possible (renseigner les variables $lon et $lat) :
je confirme que geonames donne des résultats pour le moins étranges.
À l'époque, j'étais vraiment pas chaud pour intégrer Geoportail en spoofant le referer, ça va clairement contre la volonté des gens qui font Geoportail.
Mais en remettant le nez dedans, j'ai découvert que leur API accepte les requêtes avec un User-Agent mis à "requests" ! (la librairie python)
Il se trouve que c'est exactement la librairie qu'on utilise dans celutz, donc ça marche sans devoir bricoler quoi que ce soit, et on peut se dire que c'est voulu de leur part d'accepter cet usage ;)
J'ai donc intégré l'API geoportail pour avoir l'altitude au sol (
1832e49b1a
), avec un fallback sur geonames.