Reverse geocode

-add city/code/state/region/country (googlemaps)
This commit is contained in:
2023-11-14 17:42:24 +01:00
parent 305c6bcd96
commit 0f0ec8ba59

View File

@@ -256,33 +256,48 @@ altitude=$(echo "$exif" | jq -j '.[] | .GPSAltitude | select( . != null )')
echo
if [[ -n $iso ]] && [[ -n $speed ]] && [[ -n $aperture ]]; then
printf " %-10s %-35s \n" "Speed:" "${speed}"
printf " %-10s %-35s \n" "Aperture:" "f/${aperture}"
printf " %-10s %-35s \n" "ISO:" "${iso}"
printf " %-10s %-35s \n" "Date:" "${date_original}"
printf " %-10s %-35s \n" "Maker:" "${make}"
printf " %-11s %-35s \n" "Speed:" "${speed}"
printf " %-11s %-35s \n" "Aperture:" "f/${aperture}"
printf " %-11s %-35s \n" "ISO:" "${iso}"
printf " %-11s %-35s \n" "Date:" "${date_original}"
printf " %-11s %-35s \n" "Maker:" "${make}"
if [[ "$make" =~ ^SONY ]]; then
alpha
printf " %-10s %-35s \n" "APN:" "$alpha_name (${model})"
printf " %-11s %-35s \n" "APN:" "$alpha_name (${model})"
else
printf " %-10s %-35s \n" "APN:" "${model}"
printf " %-11s %-35s \n" "APN:" "${model}"
fi
printf " %-10s %-35s \n" "Focal:" "${focal}"
printf " %-11s %-35s \n" "Focal:" "${focal}"
if [[ -n $lensID ]]; then
printf " %-10s %-35s \n" "LensID:" "${lensID}"
printf " %-11s %-35s \n" "LensID:" "${lensID}"
l="$lensID"
elif [[ -n $lensModel ]]; then
printf " %-10s %-35s \n" "LensModel:" "${lensModel}"
printf " %-11s %-35s \n" "LensModel:" "${lensModel}"
l="$lensModel"
else
printf " %-10s %-35s \n" "Lens:" "${lens}"
printf " %-11s %-35s \n" "Lens:" "${lens}"
l="$lens"
fi
if [[ -n $latitude ]] && [[ -n $longitude ]]; then
printf " %-10s %-35s \n" "Latitude:" "${latitude}"
printf " %-10s %-35s \n" "Longitude:" "${longitude}"
printf " %-10s %-35s \n" "Altitude:" "${altitude}"
printf " %-11s %-35s \n" "Latitude:" "${latitude}"
printf " %-11s %-35s \n" "Longitude:" "${longitude}"
printf " %-11s %-35s \n" "Altitude:" "${altitude}"
gps=1
coords=$(exiftool -n -gpslatitude -gpslongitude "$file")
lat=$(echo "$coords" | sed -n '1p' | awk -F":" '{print $2}' | xargs)
long=$(echo "$coords" | sed -n '$p' | awk -F":" '{print $2}' | xargs)
gm=$(curl -s "https://maps.googleapis.com/maps/api/geocode/json?latlng=${lat},${long}&sensor=false&key=AIzaSyD94L2Q4K9_ErGSarTBN4FrUxDSspGzNhY" | jq -r '.results[0].address_components')
city=$(echo "$gm" | jq '. | map( select( .types | contains(["locality"]) ) ) | .[].long_name')
code=$(echo "$gm" | jq '. | map( select( .types | contains(["postal_code"]) ) ) | .[].long_name')
state=$(echo "$gm" | jq '. | map( select( .types | contains(["administrative_area_level_2"]) ) ) | .[].long_name')
region=$(echo "$gm" | jq '. | map( select( .types | contains(["administrative_area_level_1"]) ) ) | .[].long_name')
country=$(echo "$gm" | jq '. | map( select( .types | contains(["country"]) ) ) | .[].long_name')
printf " %-11s %-35s \n" "CP / Ville:" "${code//\"/} ${city//\"/}"
printf " %-11s %-35s \n" "Région:" "${state//\"/}"
printf " %-11s %-35s \n" "Pays:" "${country//\"/}"
fi
echo
@@ -291,7 +306,7 @@ fi
# gps
if [ $opt_gps = true ]; then
if [ $gps -eq 1 ]; then
echo "GPS data available !"
echo -e "${red}GPS data available !${reset}"
a=$(echo -e "Do you want to ${bold}erase GPS data${reset} ? (k)eep or (e)rase ")
read -p "$a" choice