あなたのお役に立ちたいわんど。

Google Placesに関する知識

どうも!わんどへの投稿は初めてとなる かね です!
どうぞお見知り置きを!
今回はGoogle Places APIに関して自分へのメモがてら記事を書きたいと思います。
Google Places APIは主に指定の場所の住所情報の取得などができます。
細かい部分はまだ勉強中ですが、現在進行形で実際に触って感じた部分に関しての記事となります。

1,Google Placesとは

・周辺の地域の探索サポート
・正確な位置情報を提供してサービスの質を向上
・世界中の広範な位置情報を利用
・柔軟なスケーリングをサポートするGoogleのインフラ

Google先生に「近いお店」などで検索した時や場所の検索中に検索補助として出てくる機能などがGoogle Placesの機能となります。
実際に機能として取り上げているのが、

・場所の詳細
・現在の場所
・場所の検索
・オートコンプリート
・ジオコーディング
・位置情報
・タイムゾーン

となります。

つまり、場所を探したい時などに利用している機能が大半です。

利用方法に関しては、Google CloudのGoogle Maps PlatformからAPIキーを取得して利用する形となります。
2018年頃に仕様などが変更され、『請求先アカウントの作成』を行い、請求先との紐付けが必要となりました。
料金体系も変更があり、日計算が月計算になったりしていますので、ご注意下さい。

参考サイト:Google Cloud

2,Google Placesでオートコンプリート

今回取得した情報としては

・country
・postal_code
・administrative_area_level_1
・administrative_area_level_2
・colloquial_area
・locality
・ward
・sublocality_level_1
・sublocality_level_2
・sublocality_level_3
・sublocality_level_4
・sublocality_level_5
・premise

となります。
オートコンプリート機能の確認をしたのです。
これらは配送先や請求書先住所の住所の補助機能に関しての情報となります。

3,実際に取得してみた

実際に取得したデータを確認してみましょう。

みんなが大好き東京タワー

[
{
"address_components": [
{
"long_name": "8",
"short_name": "8",
"types": [
"premise"
]
},
{
"long_name": "2",
"short_name": "2",
"types": [
"political",
"sublocality",
"sublocality_level_4"
]
},
{
"long_name": "4丁目",
"short_name": "4丁目",
"types": [
"political",
"sublocality",
"sublocality_level_3"
]
},
{
"long_name": "芝公園",
"short_name": "芝公園",
"types": [
"political",
"sublocality",
"sublocality_level_2"
]
},
{
"long_name": "港区",
"short_name": "港区",
"types": [
"locality",
"political"
]
},
{
"long_name": "東京都",
"short_name": "東京都",
"types": [
"administrative_area_level_1",
"political"
]
},
{
"long_name": "日本",
"short_name": "JP",
"types": [
"country",
"political"
]
},
{
"long_name": "105-0011",
"short_name": "105-0011",
"types": [
"postal_code"
]
}
],
"formatted_address": "日本、〒105-0011 東京都港区芝公園4丁目2−8",
"geometry": {
"location": {
"lat": 35.6585805,
"lng": 139.74543289999997
},
"location_type": "ROOFTOP",
"viewport": {
"south": 35.6572315197085,
"west": 139.7440839197085,
"north": 35.6599294802915,
"east": 139.74678188029156
}
},
"place_id": "ChIJCewJkL2LGGAR3Qmk0vCTGkg",
"plus_code": {
"compound_code": "MP5W+C5 日本、東京都 東京",
"global_code": "8Q7XMP5W+C5"
},
"types": [
"establishment",
"point_of_interest",
"premise"
]
}
]

ニューヨークにある自由の女神

[
	{
		"address_components": [
			{
				"long_name": "自由の女神像",
				"short_name": "自由の女神像",
				"types": [
					"establishment",
					"park",
					"point_of_interest"
				]
			},
			{
				"long_name": "Manhattan",
				"short_name": "Manhattan",
				"types": [
					"political",
					"sublocality",
					"sublocality_level_1"
				]
			},
			{
				"long_name": "New York",
				"short_name": "New York",
				"types": [
					"locality",
					"political"
				]
			},
			{
				"long_name": "New York County",
				"short_name": "New York County",
				"types": [
					"administrative_area_level_2",
					"political"
				]
			},
			{
				"long_name": "New York",
				"short_name": "NY",
				"types": [
					"administrative_area_level_1",
					"political"
				]
			},
			{
				"long_name": "アメリカ合衆国",
				"short_name": "US",
				"types": [
					"country",
					"political"
				]
			},
			{
				"long_name": "10004",
				"short_name": "10004",
				"types": [
					"postal_code"
				]
			}
		],
		"formatted_address": "アメリカ合衆国 〒10004 New York, 自由の女神像",
		"geometry": {
			"location": {
				"lat": 40.6892494,
				"lng": -74.0445004
			},
			"location_type": "GEOMETRIC_CENTER",
			"viewport": {
				"south": 40.6879004197085,
				"west": -74.04584938029149,
				"north": 40.6905983802915,
				"east": -74.04315141970847
			}
		},
		"place_id": "ChIJPTacEpBQwokRKwIlDXelxkA",
		"plus_code": {
			"compound_code": "MXQ4+M5 アメリカ合衆国 New York, ニューヨーク",
			"global_code": "87G7MXQ4+M5"
		},
		"types": [
			"establishment",
			"park",
			"point_of_interest"
		]
	}
]

所々違いがありますが、ちょっとわかりづらいので整理しましょう。

TYPE 東京タワー 自由の女神
country 日本 アメリカ合衆国
administrative_area_level_1 東京都 New York
administrative_area_level_2 New York County
colloquial_area
locality 港区 New York
ward
sublocality_level_1 Manhattan
sublocality_level_2 芝公園
sublocality_level_3 4丁目
sublocality_level_4
sublocality_level_5
premise

住所は住所でも割り振られ方が東京タワーと自由の女神では違いました。

これら以外にも日本国内でのパターンも複数存在します。

日本国内の住所に関しては調べた結果

東京都港区や静岡県葵区などある場合もあるので、思った以上にややこしくなります。
sublocality_1〜5やpremireにどの情報が入るのかをConsole.logやalertなどで確認しながら行なったりする必要があるかもしれませんね。

3、まとめ


Adress Auto Completeなどを作る場合、日本国内でも越境でもパターンを考えないとそれぞれに適した住所の割り当てを考えなきゃいけなそうですね。
各国の住所の形式を理解しなければいけないことが必要かもしれません。
今回参考にさせて頂いたサイトに本当に助けられた反面、奥深さを痛感しました。
懲りずにもう少し色々と触ってみたいと思います。

参考サイト https://maps.multisoup.co.jp/blog/1952/

投稿者プロフィール

kane
脱肥満

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

Web制作の株式会社あんどぷらす
ECサイト構築サービス「ウルトコ」
マーケットプレイス「カウトコ」
CS-Cartの情報ポータル「STOCK」