Я просматривал фрагмент кода, который использовал Google Maps stati c API-запрос для загрузки дневных изображений. Проблема в том, что у меня нет платежной учетной записи для бесплатного использования API Карт Google stati c (поскольку в данный момент у меня нет доступа к кредитной карте).
Я думал об использовании MapBox stati c Изображения API, который позволяет пользователям совершать начальные вызовы API бесплатно. Я не могу преобразовать код URL API карт Google в код URL API MapBox. Любая помощь или руководство могут быть очень полезны.
Вот фрагмент кода для совершения звонков с использованием Google Maps Stati c API:
class ImageryDownloader:
def __init__(self, access_token):
self.access_token = access_token
self.url = 'https://maps.googleapis.com/maps/api/staticmap?center={},{}&zoom={}&size=400x400&maptype=satellite&key={}'
def download(self, lat, long, zoom):
res = requests.get(self.url.format(lat, long, zoom, self.access_token))
# server needs to make image available, takes a few seconds
if res.status_code == 403:
return 'RETRY'
assert res.status_code < 400, print(f'Error - failed to download {lat}, {long}, {zoom}')
image = plt.imread(BytesIO(res.content))
return image
А затем сделать Вызовы API
lat = 38.441332
lon = -105.234751
access = open(ACCESS_TOKEN_DIR, 'r').readlines()[0]
url = "https://maps.googleapis.com/maps/api/staticmap?center={},{}&zoom=14&size=400x400&maptype=satellite&key={}".format(lat, lon, access)
res = requests.get(url)
plt.imshow(plt.imread(BytesIO(res.content)))
Ссылка на документацию по MapBox API: MapBox Stati c API изображений