주소 (전자 메일이 아닌 물리적) 유효성 검사를 수행 할 수도 있습니까? 미국에서만 주소 형식이 너무 많아서 상당히 어려운 작업이 될 것 같습니다. 반면에 여러 비즈니스 요구 사항에 필요한 작업처럼 보입니다.
주소 (전자 메일이 아닌 물리적) 유효성 검사를 수행 할 수도 있습니까? 미국에서만 주소 형식이 너무 많아서 상당히 어려운 작업이 될 것 같습니다. 반면에 여러 비즈니스 요구 사항에 필요한 작업처럼 보입니다.
답변:
여기에 무료로 사용할 수있는 일종의 "상자 밖"방법이 있습니다. 100 % 완벽하지는 않지만 뻔뻔스럽게 존재하지 않는 주소는 거부해야합니다.
전체 주소를 Google의 지오 코딩 웹 서비스에 제출합니다 . 이 서비스는 입력 한 위치의 정확한 좌표, 즉 위도와 경도를 반환하려고 시도합니다.
내 경험상 주소가 유효하지 않으면 서비스에서 602의 결과를 얻을 수 있습니다. 오탐 또는 오탐의 가능성이 분명히 있지만 다른 일관성 검사와 함께 사용하면 유용 할 수 있습니다.
( 반면에 야후의 지오 코딩 웹 서비스 는 마을이 존재하지만 주소의 나머지 부분이 가짜 인 경우 마을 중심의 좌표를 반환합니다. 결과).
여기에는 여러 가지 좋은 답변이 있지만 대부분은 사용자가 타사 서비스에 연결하기 위해 코드를 작성하거나 USPS를 화면 스크래핑해야하는 "API"솔루션을 원한다고 가정합니다. 이것은 모두 훌륭하고 좋지만 구현과 관련된 비즈니스 요구 사항 및 비용을 고려한 다음 원하는 이점과 비교하여 평가해야합니다.
비즈니스 요구 사항과 데이터가 시스템에 수신되는 방식에 따라 실시간 주소 처리 솔루션이 최선의 선택 일 수 있습니다. 실시간 솔루션이 필요한 경우 Google Maps / Bing / Yahoo API의 라이선스 계약 및 기술적 제한 사항을 고려하는 것이 좋습니다. 일반적으로 매일 걸 수있는 통화 수를 제한합니다. USPS 웹 도구 API는 시스템을 사용할 수있는 방법 / 이유 및 이후에 데이터를 사용할 수있는 방법을 제한한다는 점에서 동일합니다.
동시에 정적 주소 목록을 쉽게 처리 할 수있는 훌륭한 서비스 제공 업체가 많이 있습니다. 기본적으로 서비스 제공 업체에 CSV 파일 또는 Excel 파일을 제공하고이를 정리 한 다음 다시 가져옵니다. 일반적으로 장기적인 약속이나 의무가없는 일회성 거래입니다.
전체 공개 : 저는 SmartyStreets의 창립자입니다. 미국 내 주소에 대한 주소 확인을 수행합니다. CASS는 목록 을 쉽게 인증 할 수 있으며 주소 확인 웹 서비스 API 도 제공합니다 . 숨겨진 수수료, 계약 등이 없습니다. 더 이상 필요하지 않을 때까지 서비스를 사용하고 자리를 떠날 수 있습니다. (계약이 필요한 휴대폰 회사와는 다릅니다.)
내 블로그 게시물- 주소 저장에 대한 강의 , 주소 유효성 검사 과정에서 사용되는 몇 가지 기술과 알고리즘에 대해 설명하겠습니다. 제 핵심 생각은 "주소 저장에 게으르지 마십시오. 앞으로는 골치 아픈 일뿐입니다!"
또한이 질문을 묻는 또 다른 StackOverflow 질문이 있습니다. 이라는 제목의 국제 지리적 주소가 관계형 데이터베이스에 저장하는 방법 .
독일 회사에서 사내 주소 확인 서비스를 개발하는 과정에서이 문제를 해결할 수있는 여러 가지 방법을 발견했습니다. 아래에서 찾은 결과를 요약하기 위해 최선을 다하겠습니다.
무료 오픈 소스 소프트웨어
분명히 누구나 취할 수있는 첫 번째 접근 방식은 오픈 소스 접근 방식 (예 : openstreetmap.org )이며 결코 나쁜 생각이 아닙니다. 그러나 이것을 훌륭하고 신뢰할 수있는 용도로 사용할 수 있는지 여부는 결과에 얼마나 의존해야하는지에 따라 크게 달라집니다.
주소는 엄청나게 가변적 인 것입니다. 미국 주소를 확인하는 것은 쉬운 일이 아니지만 견딜 만하지 만 광범위한 우편 번호 시스템을 사용하여 유럽, 특히 영국으로 이동하면 오픈 소스 접근 방식에는 데이터가 부족합니다.
웹 서비스 / API
엔터프라이즈 급 소프트웨어
돈은 분명히 해낼 수 있습니다. 그러나 모든 비즈니스 또는 개발자가 주소 조회 당 0.15 달러 (API 요청 1,000 건당 150 달러)를 지출 할 수있는 것은 아닙니다. 이는 대부분의 주소 유효성 검사 API가 구현 한 매우 비싼 비즈니스 모델입니다.
내가 통합 한 것 : streetlayer API
주소 데이터를 수동으로 확인하는 프로그래밍 방식의 접근 방식을 기꺼이 취하지 않았기 때문에 마침내 상사가 나를 해고하지 않고 여전히 견고하고 신뢰할 수있는 가격표가 포함 된 API가 필요하다는 결론에 도달했습니다. 국제 검증 결과.
간단히 말해서 저는 "streetlayer API"라고하는 apilayer가 구축 한 API를 통합했습니다. 저는 간단한 JSON 통합, 놀랍도록 정확한 유효성 검사 결과 및 개발자 친화적 인 가격으로 쉽게 확신했습니다. 또한 월 100 건의 요청은 완전히 무료입니다.
도움이 되었기를 바랍니다!
나는 http://www.melissadata.com 의 서비스를 사용했습니다 . 그들의 "주소 객체"는 아주 잘 작동합니다. 예, 비쌉니다. 그러나 자체 솔루션을 작성하는 비용, 애플리케이션의 더티 데이터 비용, 반송 메일러 (판매 손실 등)를 고려하면 비용이 정당화 될 수 있습니다.
https://identify.pitneybowes.com/ 에서 사용 가능한 Pitney Bowes“IdentifyAddress”API를 사용해 볼 수 있습니다.
이 서비스는 입력 주소를 전 세계의 알려진 주소 데이터베이스와 분석하고 비교하여 표준화 된 세부 정보를 출력합니다. 주소를 수정하고 누락 된 우편 정보를 추가하며 해당 우편 기관이 선호하는 형식을 사용하여 형식을 지정합니다. 또한 추가 주소 데이터베이스를 사용하여 주소 품질, 주소 유형, 음역 (예 : 중국어 한자에서 라틴 문자로) 및 주소가 건물 / 집 번호, 거리 또는 도시 수준으로 확인되는지 여부를 포함한 향상된 세부 정보를 제공 할 수 있습니다. 참조 정보.
사이트에서 사용 가능한 많은 샘플과 sdk를 찾을 수 있으며 통합하기가 매우 쉽습니다.
주소 조회를 안정적으로 수행해야하는 영역 중 하나는 VOIP E911 서비스입니다. 이를 위해 다음 서비스를 안정적으로 사용하는 회사를 알고 있습니다.
Bandwidth.com 9-1-1 액세스 API MSAG 주소 유효성 검사
MSAG = 마스터 주소 가이드
https://www.bandwidth.com/9-1-1/
SmartyStreet 미국 거리 주소 API
이 서비스를 제공하는 회사가 있습니다. 대량 우편물을 다루는 서비스국은 전체 우편물 목록을 적절한 형식으로 정리하여 우편 요금을 할인합니다. USPS는 맞춤형 솔루션을 개발하는 데 사용할 수있는 주소 정보 데이터베이스를 판매합니다. 또한 이러한 종류의 소프트웨어 및 서비스를 제공하는 승인 된 공급 업체 목록도 있습니다.
주소 유효성 검사를 소프트웨어에 연결하기위한 API가있는 일부 (많지는 않음) 패키지가 있습니다.
그러나 그게 꽤 불쾌한 문제라는 것은 맞습니다.
언급했듯이 전체 주소의 유효성을 확인하려는 경우 웹 서비스 유형 서비스를 사용하여 애플리케이션에서 변경 사항을 빠르게 인식 할 수 있도록하는 것이 좋습니다.
위에 나열된 서비스 외에도 webservice.net에는이 미국 주소 유효성 검사 서비스가 있습니다. http://www.webservicex.net/WCF/ServiceDetails.aspx?SID=24
우리는 Perfect Address로 성공했습니다 .
그들의 데이터베이스에는 모든 미국 거리 이름과 거리 번호 범위가 있습니다. 또한 그러한 종류의 데이터를 가질만큼 운이 좋다면 자유 형식 주소 필드에 대한 꽤 괜찮은 파서 역할을합니다.
유효한 주소인지 확인하는 것은 한 가지입니다.
그러나 주어진 사람이 주어진 주소에 살고 있는지 확인하려는 경우, 거의 보증 할 수있는 유일한 주소는 해당 주소에 대한 테스트 메일이며, 그 사람이 조직되어 있는지 또는 해당 주소의 누군가를 알고 있는지 확실하지 않습니다.
그렇지 않으면 사람들은 자신이 알고있는 임의의 임의의 주소를 지정할 수 있으며 그것은 당신에게 아무 의미가 없습니다.
즉각적인 결과를 위해 할 수있는 최선의 방법은 사용자에게 은행 명세서 또는 기타 최근 거주 증명서의 사진 / 스캔 사본을 보내달라고 요청하는 것입니다. 왜냐하면 적어도 잊어 버리려면 더 열심히 노력해야하기 때문입니다. Forging은 기본적인 수준의 이미지 포렌식 분석을 통해 상황이 쉽게 나타납니다.
글로벌 솔루션이 없습니다. 어떤 국가에서든 그것은 기껏해야 다소 까다 롭습니다.
영국에서 우체국은 우편 주소를 관리하고 확인 목적으로 주소 정보를 (유상으로) 제공 할 수 있습니다.
정부 기관은 또한 광범위한 주소 목록을 보관하고 있으며, 이들은 NLPG (National Land and Property Gazetteer)에서 중앙 집중적으로 대조됩니다.
실제로 이러한 목록에 대해 유효성을 검사하는 것은 매우 어렵습니다. 대부분의 사람들은 주소가 우체국에서 어떻게 보관되는지 정확히 알지 못합니다. 일부 기업은 특정 거리에있는 번호조차 알지 못합니다.
가장 좋은 방법은 이런 종류의 전문 회사에 접근하는 것입니다.
미국 기반 주소 데이터의 경우 회사에서 GeoStan 을 사용 했습니다 . C와 Java에 대한 바인딩이 있습니다 (그리고 Perl 바인딩을 만들었습니다). 상업용 제품이며 저렴하지 않습니다. 하지만 매우 빠르며 (초당 최대 300 개 주소) CASS 인증 (USPS 대량 메일 할인), DPV (배달 지점 확인) 플래그 지정 및 LON / LAT 지오 코딩과 같은 기능을 제공합니다.
Perl 모듈 Geo :: PostalAddress 가 있지만 휴리스틱을 사용하며 GeoStan에 대해 언급 된 다른 기능이 없습니다.
편집 : 일부는 '직접해라'고 언급했습니다. 그렇게하기로 결정했다면 주소 정보를 포함하여 미국에 대한 많은 정보가 포함 된 US Census Tiger 데이터 세트 에서 시작하기에 좋은 정보 소스입니다 .
Yahoo에는 Placemaker API도 있습니다. 위치에만 적합하지만 모든 세계 위치에 대한 범용 ID가 있습니다.
ISO 목록에 표준이없는 것 같습니다 .
NAICS.com은 주소를 포함한 모든 종류의 주요 비즈니스 데이터를 추가하는 API를 제공합니다. 이것은 사이트의 양식이 처리됨에 따라 즉시 발생합니다. https://www.naics.com/business-intelligence-api/
Fixaddress.com 서비스는 다음과 같은 서비스를 제공합니다.
1) 주소 유효성 검사.
2) 주소 수정.
3) 주소 맞춤법 수정.
4) 음성 오류를 수정합니다.
Fixaddress.com은 USPS 및 Tiger 데이터를 참조 데이터로 사용합니다.
자세한 내용은 아래 링크를 방문하십시오.
미국 주소의 경우 유효한 주를 요구하고 zip이 유효한지 확인할 수 있습니다. 우편 번호가 올바른 상태인지 확인할 수도 있지만 그 이상으로 많은 오탐을 제공하지 않는 테스트를 실행할 수 있다고 생각하지 않습니다.
당신은 무엇을하려고하십니까-단순한 실수를 방지하거나 일종의 신원 확인을 시행하고 있습니까?