{ "cells": [ { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Collecting googlemaps\n", " Downloading https://files.pythonhosted.org/packages/5a/3d/13b4230f3c1b8a586cdc8d8179f3c6af771c11247f8de9c166d1ab37f51d/googlemaps-3.0.2.tar.gz\n", "Requirement already satisfied: requests<3.0,>=2.11.1 in /usr/local/lib/python3.7/site-packages (from googlemaps) (2.19.1)\n", "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.7/site-packages (from requests<3.0,>=2.11.1->googlemaps) (2018.8.24)\n", "Requirement already satisfied: idna<2.8,>=2.5 in /usr/local/lib/python3.7/site-packages (from requests<3.0,>=2.11.1->googlemaps) (2.7)\n", "Requirement already satisfied: urllib3<1.24,>=1.21.1 in /usr/local/lib/python3.7/site-packages (from requests<3.0,>=2.11.1->googlemaps) (1.23)\n", "Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /usr/local/lib/python3.7/site-packages (from requests<3.0,>=2.11.1->googlemaps) (3.0.4)\n", "Building wheels for collected packages: googlemaps\n", " Running setup.py bdist_wheel for googlemaps ... \u001b[?25ldone\n", "\u001b[?25h Stored in directory: /Users/kyle/Library/Caches/pip/wheels/3c/3f/25/ce6d7722dba07e5d4a12d27ab38f3d7add65ef43171b02c819\n", "Successfully built googlemaps\n", "Installing collected packages: googlemaps\n", "Successfully installed googlemaps-3.0.2\n" ] } ], "source": [ "!pip3 install googlemaps" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "import googlemaps\n", "from datetime import datetime" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [], "source": [ "gmaps = googlemaps.Client(key='Your Key Value')\n", "# 이 키값은 https://developers.google.com/maps/documentation/geocoding/get-api-key#quick-guide 에서 키값을 생성한 후, 입력\n" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "reverse_geocode_result = gmaps.reverse_geocode((37.601224350568216, 127.01275519124911))" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'address_components': [{'long_name': '524',\n", " 'short_name': '524',\n", " 'types': ['premise']},\n", " {'long_name': 'Jeongneung-dong',\n", " 'short_name': 'Jeongneung-dong',\n", " 'types': ['political', 'sublocality', 'sublocality_level_2']},\n", " {'long_name': 'Seongbuk-gu',\n", " 'short_name': 'Seongbuk-gu',\n", " 'types': ['political', 'sublocality', 'sublocality_level_1']},\n", " {'long_name': 'Seoul',\n", " 'short_name': 'Seoul',\n", " 'types': ['administrative_area_level_1', 'political']},\n", " {'long_name': 'South Korea',\n", " 'short_name': 'KR',\n", " 'types': ['country', 'political']},\n", " {'long_name': '136-100', 'short_name': '136-100', 'types': ['postal_code']}],\n", " 'formatted_address': '524 Jeongneung-dong, Seongbuk-gu, Seoul, South Korea',\n", " 'geometry': {'location': {'lat': 37.6011608, 'lng': 127.0123543},\n", " 'location_type': 'ROOFTOP',\n", " 'viewport': {'northeast': {'lat': 37.6025097802915,\n", " 'lng': 127.0137032802915},\n", " 'southwest': {'lat': 37.5998118197085, 'lng': 127.0110053197085}}},\n", " 'place_id': 'ChIJf1Yn7em8fDURa3MQZWBL5H0',\n", " 'plus_code': {'compound_code': 'J226+FW Seoul, South Korea',\n", " 'global_code': '8Q99J226+FW'},\n", " 'types': ['street_address']}" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "reverse_geocode_result[0]" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "reverse_geocode_result_2 = gmaps.reverse_geocode((37.601224350568216, 127.01275519124911), language='KO')" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'address_components': [{'long_name': '524',\n", " 'short_name': '524',\n", " 'types': ['premise']},\n", " {'long_name': '정릉동',\n", " 'short_name': '정릉동',\n", " 'types': ['political', 'sublocality', 'sublocality_level_2']},\n", " {'long_name': '성북구',\n", " 'short_name': '성북구',\n", " 'types': ['political', 'sublocality', 'sublocality_level_1']},\n", " {'long_name': '서울특별시',\n", " 'short_name': '서울특별시',\n", " 'types': ['administrative_area_level_1', 'political']},\n", " {'long_name': '대한민국', 'short_name': 'KR', 'types': ['country', 'political']},\n", " {'long_name': '136-100', 'short_name': '136-100', 'types': ['postal_code']}],\n", " 'formatted_address': '대한민국 서울특별시 성북구 정릉동 524',\n", " 'geometry': {'location': {'lat': 37.6011608, 'lng': 127.0123543},\n", " 'location_type': 'ROOFTOP',\n", " 'viewport': {'northeast': {'lat': 37.6025097802915,\n", " 'lng': 127.0137032802915},\n", " 'southwest': {'lat': 37.5998118197085, 'lng': 127.0110053197085}}},\n", " 'place_id': 'ChIJf1Yn7em8fDURa3MQZWBL5H0',\n", " 'plus_code': {'compound_code': 'J226+FW 대한민국 서울특별시',\n", " 'global_code': '8Q99J226+FW'},\n", " 'types': ['street_address']}" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "reverse_geocode_result_2[0]" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.5" }, "varInspector": { "cols": { "lenName": 16, "lenType": 16, "lenVar": 40 }, "kernels_config": { "python": { "delete_cmd_postfix": "", "delete_cmd_prefix": "del ", "library": "var_list.py", "varRefreshCmd": "print(var_dic_list())" }, "r": { "delete_cmd_postfix": ") ", "delete_cmd_prefix": "rm(", "library": "var_list.r", "varRefreshCmd": "cat(var_dic_list()) " } }, "types_to_exclude": [ "module", "function", "builtin_function_or_method", "instance", "_Feature" ], "window_display": false } }, "nbformat": 4, "nbformat_minor": 2 }