получить 9-значный почтовый индекс из 5-значного почтового индекса, программный, API

У меня есть 5-значные почтовые индексы, они получены из Google Maps Api.

Моя дилемма в том, что мне нужно подключиться к удаленной базе данных, которая также содержит адреса. Если адрес не существует в этой базе данных, я должен записать его, если он существует, я ничего не делаю, кроме как сохраняю идентификатор, который база данных присвоила этому адресу. Проблема возникает из-за того, что API для проверки этой базы данных не принимает подстановочные знаки, адреса в этой базе данных имеют 9-значные почтовые индексы (5 + 4) и не возвращают, что остальная часть адреса соответствует моему адресу с 5-значными почтовыми индексами.

Удаленная система сообщит мне, что адрес не существует среди тех, которые я отправляю.

Поэтому, чтобы предотвратить запись повторяющихся адресов в базу данных, мне нужно будет найти 9-значную версию почтового индекса, которая у меня есть, перед отправкой.

Как это сделать? Есть ли формула для определения последних 4 цифр 5-значного адреса? Есть ли у USPS API? У переписи есть гигантская таблица?

Понимание ценится


person CQM    schedule 22.02.2013    source источник
comment
Да, в USCB есть гигантская таблица, но она представлена ​​в виде шейп-файла с разбивкой по городам. Я просмотрел их и использовал со сценариями Python. (Боже, это было весело!) И на самом деле, USCB не использует почтовые индексы для своих данных, но по многочисленным просьбам создала ZCTA (области табуляции почтовых индексов), чтобы попытаться связать свои блоки переписи с почтовыми индексами... в любом случае, это мелочи, вероятно, не то, что вы ищете.   -  person Matt    schedule 23.02.2013


Ответы (2)


Вам разрешено использовать USPS API для получения информации только в том случае, если вы используете USPS для отправки почты...

Но вы можете проверить SmartyStreets (я там работал) или другого поставщика, сертифицированного CASS. Они лицензированы для проверки адреса, и вы также можете выполнять поиск городов и почтовых индексов без адреса (в зависимости от того, кого вы выберете).

Я думаю, вы найдете их намного проще и полнее, чем веб-служба USPS по умолчанию.

Вот пример кода... выбирайте сами: https://github.com/smartystreets/LiveAddressSamples

person Matt    schedule 22.02.2013

Почтовая служба США имеет ряд API. Их «API адресной информации» включают:

Стандартизация адресов

Устраните ошибки адресации и помогите обеспечить точную и своевременную доставку. Этот инструмент исправляет ошибки в адресах улиц, включая сокращения и отсутствующую информацию. Он также предоставляет код ZIP+4®.

Поиск почтового индекса™

Найдите соответствующие почтовые индексы или почтовые индексы + 4 для любого заданного адреса, города и штата в США.

Поиск города/штата

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

Для использования API адресной информации требуется разрешение.

person Martey    schedule 22.02.2013
comment
Верно, но это разрешено только при отправке через USPS. См. их Условия обслуживания. - person Matt; 23.02.2013