我想连接谷歌卫星地图与边界在shp,为了裁剪一切城市以外的。我有shp文件的 弗罗茨瓦夫市边界 和代码,从谷歌地图下载卫星地图。地图的中间是已知的(lat = 51.1078852, lon = 17.0385376
),所以也许有可能以某种方式将两者连接起来?
我发现了许多方法来做,使用其他软件,如。
但不是Python.这里是一个代码,下载弗罗茨瓦夫卫星地图(chenging的API密钥后)。
import requests
import shutil
#API
with open('apikey.txt') as f:
apikey = f.readline()
f.close
lat = 51.1078852
lon = 17.0385376
zoom = 14
size_tile_x, size_tile_y = 1024, 1024
scale = 2
format_image='png'
maptype='satellite'
style=''
url_s = f"https://maps.googleapis.com/maps/api/staticmap?key={apikey}&scale={scale}¢er={lat},{lon}&zoom={zoom}&format={format_image}&maptype={maptype}{style}&size={size_tile_x}x{size_tile_y}"
r = requests.get(url_s, stream=True, headers={'User-agent': 'Mozilla/5.0'})
name = 'Map.png'
if r.status_code == 200:
with open(name, 'wb') as f:
r.raw.decode_content = True
shutil.copyfileobj(r.raw, f)