30 lines
996 B
Bash
30 lines
996 B
Bash
|
#!/bin/bash
|
||
|
|
||
|
json=`curl "https://wiki.linux-forks.de/mediawiki/api.php?action=query&prop=revisions&rvprop=content&format=json&titles=$1&rvsection=0&rvslots=main" | sed -s "s/\\\\\\\\n//g"`
|
||
|
|
||
|
title=`echo $json | sed -n 's/.*"title":\s*"\([^"]\+\).*/\1/p'`
|
||
|
image=`echo "$json" | sed -n "s/.*image = \([^|]*\).*/\1/p"`
|
||
|
|
||
|
coords=`echo "$json" | sed -n "s/.*coordinates = {{Co|\([^}]*\).*/\1/p"`
|
||
|
coord_x=`echo "$coords" | sed -n "s/\([^|]\+\).*/\1/p"`
|
||
|
coord_y=`echo "$coords" | sed -n "s/.*|\([^|]\+\).*/\1/p"`
|
||
|
|
||
|
description=`echo $json | sed -n "s/.*coordinates.*[^']*'''\([^']*\)'''\([^\.]*\).*/\1\2./p"
|
||
|
`
|
||
|
|
||
|
if [[ "$coord_x" != "" && "$coord_y" != "" ]]; then
|
||
|
echo "{\
|
||
|
\"type\": \"Feature\",\
|
||
|
\"properties\": {\
|
||
|
\"name\": \"$title\",\
|
||
|
\"amenity\": \"City\",\
|
||
|
\"description\": \"$description\",\
|
||
|
\"image\": \"https://wiki.linux-forks.de/mediawiki/images/thumb/0/0e/$image/250px-$image\"\
|
||
|
},\
|
||
|
\"geometry\": {\
|
||
|
\"type\": \"Point\",\
|
||
|
\"coordinates\": [$coord_x, $coord_y]\
|
||
|
}\
|
||
|
},"
|
||
|
fi
|