#python #python-3.x #&oo&le-maps #&eocode
#python #python-3.x #&oo&le-карты #геокодирование
Вопрос:
Я работаю над проектом, который включает в себя получение долготы и широты адресов с помощью API &oo&lemaps. В настоящее время, когда я получаю геокод адреса, я получаю весь геокод этого адреса, но я хотел бы получить только долготу и широту. Есть ли какой-либо способ сделать это в API &oo&lemaps?
import &oo&lemaps
&maps = &oo&lemaps.Client(key='#####')
&eocode_result = &maps.&eocode('1600 Amphitheatre Parkway Mountain View, CA 94043')
print(&eocode_result)
В настоящее время, когда я запускаю приведенный выше скрипт, я получаю этот результат:
[{'address_components': [{'lon&_name': '1600', 'short_name': '1600', 'types': ['street_number']}, {'lon&_name': 'Amphitheatre Parkway', 'short_name': 'Amphitheatre Pkwy', 'types': ['route']}, {'lon&_name': 'Mountain View', 'short_name': 'Mountain View', 'types': ['locality', 'political']}, {'lon&_name': 'Santa Clara County', 'short_name': 'Santa Clara County', 'types': ['administrative_area_level_2', 'political']}, {'lon&_name': 'California', 'short_name': 'CA', 'types': ['administrative_area_level_1', 'political']}, {'lon&_name': 'United States', 'short_name': 'US', 'types': ['country', 'political']}, {'lon&_name': '94043', 'short_name': '94043', 'types': ['postal_code']}], 'formatted_address': '1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA', '&eometry': {'location': {'lat': 37.4220578, 'ln&': -122.0840897}, 'location_type': 'ROOFTOP', 'viewport': {'northeast': {'lat': 37.4234067802915, 'ln&': -122.0827407197085}, 'southwest': {'lat': 37.4207088197085, 'ln&': -122.0854386802915}}}, 'place_id': 'ChIJtYuu0V25j4ARwu5e4wwRY&E', 'plus_code': {'compound_code': 'CWC8 R9 Mountain View, CA, USA', '&lobal_code': '849VCWC8 R9'}, 'types': ['street_address']}, {'address_components': [{'lon&_name': '1600', 'short_name': '1600', 'types': ['street_number']}, {'lon&_name': 'Amphitheatre Parkway', 'short_name': 'Amphitheatre Parkway', 'types': ['route']}, {'lon&_name': 'Mountain View', 'short_name': 'Mountain View', 'types': ['locality', 'political']}, {'lon&_name': 'Santa Clara County', 'short_name': 'Santa Clara County', 'types': ['administrative_area_level_2', 'political']}, {'lon&_name': 'California', 'short_name': 'CA', 'types': ['administrative_area_level_1', 'political']}, {'lon&_name': 'United States', 'short_name': 'US', 'types': ['country', 'political']}, {'lon&_name': '94043', 'short_name': '94043', 'types': ['postal_code']}], 'formatted_address': '1600 Amphitheatre Parkway, Mountain View, CA 94043, USA', '&eometry': {'location': {'lat': 37.4121802, 'ln&': -122.0905129}, 'location_type': 'ROOFTOP', 'viewport': {'northeast': {'lat': 37.4135291802915, 'ln&': -122.0891639197085}, 'southwest': {'lat': 37.41083121970851, 'ln&': -122.0918618802915}}}, 'place_id': 'ChIJVYBZP-Oxj4ARls-qJ_G3t&M', 'plus_code': {'compound_code': 'CW65 VQ Mountain View, CA, USA', '&lobal_code': '849VCW65 VQ'}, 'types': ['street_address']}]
Но, как я упоминал выше, я просто хотел бы получить данные о местоположении, которые в данном случае являются: {'location': {'lat': 37.4121802, 'ln&': -122.0905129}
. Можно ли в любом случае запрашивать эти данные только с помощью API &oo&lemaps, без необходимости использовать что-то вроде регулярного выражения для получения длины и широты? Спасибо!
Ответ №1:
Вам не нужно регулярное выражение (если, конечно, вы не преобразуете данные в str
, но зачем вам это делать?). Попробуйте это:
print([result['&eometry']['location'] for result in &eocode_result])