3

Google에서 지오 코딩을 시도하는 일부 주소의 경우 Google에서 부적절하게 결정적 결과를 반환합니다.Google 지오 코드 API가 결론적이지 않은 결과를 반환합니다.

다음은 예이지만 격리 된 문제는 아닙니다. 첫 번째 반환 된 결과가 정확히 일치, 그러나 "partial_match"로 플래그에게 그것을 구글 :

 
Street address: 16160 Frederick Rd 
City:   Gaithersburg 
State:   MD 
Zip code:  20877 

링크 : 여기 http://maps.googleapis.com/maps/api/geocode/json?sensor=false&address=16160%20Frederick%20Rd,+Gaithersburg,+MD,+20877

내 문제는 올바른 일치하는 결정이다. 이 경우 "부분 일치"플래그는 일치하는 모든 결과에서 "true"로 설정되기 때문에 유용하지 않습니다. 이 경우 거리 주소, 도시, 주 및 우편 번호를 평등하게 테스트 할 수 있습니다. 그러나 Google에 보낼 주소와 철자 사이에 약간의 차이가있을 경우 응답으로 받아 볼 수 있습니다. 어느 쪽도 일하지 않는다. (예 : "Road"vs "Rd").

여기 뭔가 잘못 되었나요? 내가 익숙하지 않은 정확한 일치를 구별 할 수있는 결정적인 방법이 있습니까?

감사합니다.

답변

3

Google은 주소 근사치에서 훌륭한 업무를 수행합니다. 당신이 찾고있는 것은 주소 확인입니다. SmartyStreets은 결과에 결정적인 주소 확인 API를 제공합니다. 여기에 무엇을 그 주소에 대한 SmartyStreets의 API 반환 :

입력 :

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

출력 : "dpv_match_code"가 "Y"이라고

[ 
    { 
     "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 
     } 
    } 
] 

알 수 있습니다. 이것이 USPS입니다. 확인 된 배달 지점에 대해 말하십시오. 그 지점에서 실제 주소라는 것을 알고 있습니다. SmartyStreets는 공식적인 최신 USPS 데이터를 사용하며 CASS 인증 소프트웨어 공급 업체입니다.

API는 비영리 단체, 교육 기관 및 사용 빈도가 낮은 사용자에게 무료입니다. SmartyStreets에서 결과를 받으면 Google로 지오 코드 할 수 있습니다. 전체 공개 : 저는 SmartyStreets의 개발자입니다.

편집 : 추가 된 위도/경도 필드 (새로 출시)

+1

I'v 이미 내 주소 검증 알고리즘에 스마티-거리를 통합. 제가 전화로 당신과 이야기를 나눈 가능성도 있습니다. - 그런데 훌륭한 전화 지원! 몇 가지 다른 서비스를 테스트했고 파서가 내가 만난 최고입니다. Smarty-Streets와 관련된 문제는 경도와 위도를 반환하지 않는다는 것입니다. 따라서 멋진 거리에서 뭔가를 얻을 수 있다면 돌아가서 다른 곳에서 경도와 위도를 가져와야합니다. –

+0

알기. 내가 너를 알아보지 못해 미안해! :) 어떤 시점에서 위도/경도에 대해 계속 지켜봐야 할 것은 잘만 - 너무 - 먼 - 미래입니다. – mdwhatcott

+1

업데이트! 조금 지연되었지만 보시다시피 SmartyStreets는 이제 지오 코딩을 수행합니다. – Matt