Google Geolocation API возвращает всегда одну и ту же позицию при использовании Cell-ID - PullRequest
0 голосов
/ 17 апреля 2019

В настоящее время я работаю над проектом, используя Google Geo-Location API, чтобы запросить мою позицию.

Для отправки запроса я использую Python и библиотеку запросов.

URL-адрес, на который я отправляю запрос:

url = "https://www.googleapis.com/geolocation/v1/geolocate?key={MyKey}"

Где "{MyKey}"заменяется моим API-ключом.

Данные запроса:

payload = """{ 
        "radioType":"gsm",
        "mobileCountryCode": 262,
        "mobileNetworkCode": 1,
        "considerIp": "false",
        "cellTowers": [

               {
                  "cellId": 63,
                  "locationAreaCode": 31007,
                  "mobileCountryCode": 262,
                  "mobileNetworkCode": 01,
                  "signalStrenght":-51
               }
            ] }"""

Запрос выполняется с помощью команды:

 response = requests.request("POST", url, data=payload)

Ответ содержиткод 200 и всегда одинаковые GPS-координаты в центре Германии.

Текст ответа извлекается с помощью:

json.loads(response.text)

Это приводит к

{'location': {'lat': 51.165690999999995, 'lng': 10.451526}, 'accuracy': 272909.0}

Это очень высокая неточность и совершенно неправильные координаты.

Точно такие же координаты и точность также получены с разными Cell-ID из разных стран.

Кто-нибудь сталкивался с такой же проблемой и решил ее?Есть ли неверные предположения или есть ошибка в моем запросе?

Информация о том, как получить координаты, была взята из: https://developers.google.com/maps/documentation/geolocation/

...