Список типов улиц Google Place API

Я использую место Google для получения адреса, и каким-то образом мы хотим, чтобы улица (маршрут в терминологии Google) была разделена на название улицы и тип улицы. Мы также хотим, чтобы тип улицы соответствовал существующему столбцу в базе данных.
Но все становится сложнее, когда Google Place иногда использует XXXX Street, а иногда XXXX st
Например, это типичный адрес Google

{
    administrative_area_level_1: ['short_name', 'VIC'],
    locality: ['long_name', 'Carlton'],
    postal_code: ['long_name', '3053'],
    route: ['long_name', 'Canada Ln'],
    street_number: ['short_name', '12'],
    subpremise: ['short_name', '13']
}

Но он всегда показывает Canada Lane в поле для предложений.

А иногда еще хуже, когда аббревиатура не соответствует моей локальной модели данных. Например, мы используем la вместо ln для сокращения полосы движения.
Буду признателен, если кто-нибудь подскажет, где найти список типов улиц (и аббревиатур), используемых API Google. Или есть ли способ отключить опцию аббревиатуры?


person Tony Fu    schedule 14.05.2015    source источник


Ответы (1)


Похоже, вам нужны "уличные суффиксы". Это сложно.

Мало того, что они меняются в разных странах и на разных языках, даже в одной стране и на одном языке они могут использоваться по-разному; аббревиатуры могут иметь несколько значений: «улица» может быть «улицей» или «святым»; аббревиатуры используются или нет, в зависимости от тонких правил, которые также меняются от места к месту.

То же самое касается сторон света (север, юг, восток, запад), которые являются частями названий дорог/улиц: «North St» или «N 11st Street»? Все сложно.

Если у вас уже есть большое количество адресов, и вас интересуют только адреса на английском языке, вы можете взять последнее слово из названия каждой улицы в качестве суффикса. При сопоставлении с собственными данными допускайте сокращения при сопоставлении, а не пытайтесь их расширить.

Например, не пытайтесь расширить «Canada La» до «Canada Lane», чтобы оно соответствовало «Lane». Вместо этого разверните «Lane» в [«Lane», «La», «Ln»] и сопоставьте суффиксы со всеми значениями.

Тогда вам понадобится стратегия для «столкновений», аббревиатур, которые могут означать 2+ суффикса. Они кажутся редкими, я не могу их вспомнить («St» нет, потому что «Saint» не является суффиксом) и USPS http://pe.usps.gov/text/pub28/28apc_002.htm, похоже, их нет.

person miguev    schedule 28.06.2016