저는 방금 GeoPy를 시작했습니다. 사용 가능한 여러 지오 코더의 품질을 확인하기 위해 몇 가지 테스트를 실행했습니다. Bing의 지오 코더가 Google보다 정확하다는 사실을 확인했지만 (적어도 내 목적 상) Bing은 우편 번호를 반환하는 대신

.이 문제를 해결하는 이유 / 방법에 대한 의견이 있으십니까?

내 테스트 코드는 다음과 같습니다.

from geopy import geocoders g = geocoders.Google() b = geocoders.Bing("<DEV KEY HERE>") services = [g, b] def search_list(addylist): for address in addylist: for x in services: for place, (lat, lng) in x.geocode(address, exactly_one=False): print "%s: %s: %.9f, %.9f \n" % (x, place, lat, lng) addy1 = "513 N 36th Ave , Seattle" addy2 = "121 S First Street , La Conner" addy3 = "854 NE 58th St, Seattle" addylist = [addy1, addy2, addy3] search_list(addylist) 

내 출력은 다음과 같습니다.

<geopy.geocoders.google.Google object at 0x18e75d0>: 513 36th Ave, Seattle, WA 98122, USA: 47.606811900, -122.287247300 <geopy.geocoders.google.Google object at 0x18e75d0>: 513 N 36th St, Seattle, WA 98103, USA: 47.651385400, -122.351573800 <geopy.geocoders.bing.Bing object at 0x18e76d0>: 513 N 36TH St, Seattle, WA <built-in function zip>, United States: 47.651340485, -122.351692200 <geopy.geocoders.google.Google object at 0x18e75d0>: 121 1st St, La Conner, WA 98257, USA: 48.391576600, -122.496045800 <geopy.geocoders.google.Google object at 0x18e75d0>: 121 N 1st St, La Conner, WA 98257, USA: 48.394719800, -122.494525700 <geopy.geocoders.bing.Bing object at 0x18e76d0>: 121 S 1ST St, La Conner, WA <built-in function zip>, United States: 48.391513824, -122.495391846 <geopy.geocoders.google.Google object at 0x18e75d0>: 854 NE 58th St, Seattle, WA 98105, USA: 47.670977000, -122.317815000 <geopy.geocoders.bing.Bing object at 0x18e76d0>: 854 NE 58TH St, Seattle, WA <built-in function zip>, United States: 47.670978546, -122.317817688 

Bing이 더 일관된 것 같으며 두 개의 결과가 아닌 하나의 올바른 결과 만 반환합니다. 유일한 문제는 Bing이 어떤 이유로 든 우편 번호를 반환하지 않고 주소와 <built-in function zip>를 포함하는 문자열을 반환한다는 것입니다.

댓글

  • 이 동작을 재현 할 수는없는 '-각 예제 항목에 대한 우편 번호가 표시됩니다. 게시 할 수 있습니까? OS, python 버전, geopy 버전 등에 대한 자세한 정보 …?
  • BTW,이 질문은 stackoverflow.com에 더 적합한 것 같습니다.
  • I ' Linux Mint 10, Python 2.7, GeoPy 0.94.1을 사용하고 있습니다. 무엇을 사용하고 계십니까? '이 (가) 작동한다는 점이 이상합니다. geocoders.Bing('DEV KEY').geocode('854 NE 58th St, Seattle')는 OS X Lion, Python 2.7.2를 실행하는 것이 아니라
  • ' m이 아닌 우편 번호로 완전한 주소를 반환합니까? GeoPy 0.94.2 ('가 PIP를 내린 것입니다.) 예, < 내장 함수 zip >.
  • 알겠습니다. 문제가 된 것 같습니다. 나는 친구에게 코드를 실행 시켰고 그는 당신과 같은 결과를 얻었습니다. 문제가 무엇이든 GeoPy 0.94.2에서 해결 된 것 같습니다. 0.94.1을 제거하고 0.94.2를 설치했으며 ' 모두 정상입니다.

답변

이 방법이 도움이 될지 확실하지 않지만 지오 코딩이 포함 된 주소 확인 공급자를 사용할 수 있습니다. 저는 SmartyStreets의 개발자이며 그러한 공급자입니다.이 JSON 응답 예시 를 확인하세요 (아래로 스크롤).

Google과 Bing은 근사화 서비스는 훌륭하지만 수행하려는 작업에 따라 라이센스 계약에 문제가 발생할 수 있습니다. 사용량이 적은 고객을 위해 영구 무료 요금제를 제공하며 비영리 단체에게는 절대 무료입니다.

댓글

  • 이봐 요. 좋습니다. '이 작업을 시도 할 것 같습니다. 당신이 ' 맞습니다. 라이선스 계약 측면에서 더 좋습니다. 감사합니다.
  • 호기심에서 데이터의 출처는 어디입니까?
  • 우리의 데이터는 SmartyStreets가 CASS 인증 사용권자인 USPS에서 가져옵니다. en.wikipedia.org/wiki/Coding_Accuracy_Support_System

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다