Google делает замечательную работу в приближении адреса.То, что вы ищете, это проверка адреса. SmartyStreets предоставляет API проверки адреса, который является убедительным в своих результатах.Вот что API SmartyStreets возвращает для этого адреса:
Ввод:
https://api.qualifiedaddress.com/street-address/?street=16160%20Frederick%20Rd&street2=&city=gaithersburg&state=md&zipcode=20877&candidates=10&auth-token=YOUR_AUTHENTICATION_TOKEN_HERE
Вывод:
[
{
"input_index": 0,
"candidate_index": 0,
"delivery_line_1": "16160 Frederick Rd",
"last_line": "Gaithersburg MD 20877-4011",
"delivery_point_barcode": "208774011604",
"components": {
"primary_number": "16160",
"street_name": "Frederick",
"street_suffix": "Rd",
"city_name": "Gaithersburg",
"state_abbreviation": "MD",
"zipcode": "20877",
"plus4_code": "4011",
"delivery_point": "60",
"delivery_point_check_digit": "4"
},
"metadata": {
"record_type": "S",
"county_fips": "24031",
"county_name": "Montgomery",
"carrier_route": "C004",
"congressional_district": "08",
"latitude": 39.12162,
"longitude": -77.17619,
"precision": "Zip9"
},
"analysis": {
"dpv_match_code": "Y",
"dpv_footnotes": "AABB",
"dpv_cmra": "N",
"dpv_vacant": "N",
"ews_match": false
}
}
]
Обратите внимание, что " dpv_match_code"- это" Y ".Это говорит USPS для подтвержденного пункта доставки - вы знаете, что это реальный адрес в тот момент.SmartyStreets использует официальные текущие данные USPS и является CASS-сертифицированным поставщиком программного обеспечения.
API является бесплатным для некоммерческих, образовательных учреждений и пользователей с низким уровнем использования.Получив результат от SmartyStreets, вы можете геокодировать его с помощью Google.Полное раскрытие: я разработчик на SmartyStreets.
РЕДАКТИРОВАТЬ: Добавлены поля широты / долготы (недавно выпущен)