住所検証はどのように実行しますか?[閉まっている]


88

アドレス(電子メールではなく、物理的な)検証を実行することも可能ですか?米国だけでも、非常に多くの住所形式があるため、これはかなり困難な作業になります。一方、いくつかのビジネス要件に必要なタスクのようです。


22
何をするにしても、アドレスが無効であると思われる場合は、ユーザーにそれが実際に有効であることを選択させてください。バリデーターが無効であると言っているので、それを拒否しないでください。
Pim Jager

「アドレスのオートコンプリート」または「アドレスの検証」ですか?現実の世界で起こっているすべての変化を知るサービスはありません。毎分、何百万もの新しいアドレスが表示され、古いアドレスは解体されています。そして私は今、惑星の範囲内でローカルに話している。
Yevgeniy Afanasyev

回答:


27

これは、自由で「外付け」の方法で行うことができます。100%完璧ではありませんが、あからさまに存在しないアドレスを拒否する必要があります。

住所全体をGoogleのジオコーディングウェブサービスに送信します。このサービスは、フィードした場所の正確な座標、つまり緯度と経度を返そうとします。

私の経験では、アドレスが無効な場合、サービスから602の結果が返されます。偽陽性または偽陰性の可能性は確かにありますが、他の整合性チェックと組み合わせて使用​​すると便利な場合があります。

(一方、YahooのジオコーディングWebサービスは、町は存在するが、住所の残りの部分が偽の場合、町の中心の座標を返します。結果)。


4
実際にライブシステムでこの方法を使用した人はいますか?
アストン

27
GoogleとYahooのTOSは、ユーザーに表示される地図の使用と組み合わせて使用​​する場合を除き、ジオコーディングサービスの使用を禁止しています。Jonathan Oliverの提案に似たものを見つけてください。参照:code.google.com/apis/maps/terms.html
Matt

1
間違ったアドレスを入力すると、上記の602の結果が得られません。
HK1

9
これは実際には選択された答えではありません。これはGoogleのTOSに違反しており、実際にはアドレスを検証するものではありません。Googleは多くのインテリジェンスを使用して、情報がわずかにずれている場合でも、必要な住所を「推測」します。55 Main Stと入力すると、Googleはジオコードも返します。Googleは、50 Main Stと60 Main Stがあることを認識しているため、55 Main Stが実際にはない場合でも、距離を平均化する成功したジオコードを返します。存在します。USPS、できればExperian、SmartyStreetsなどの実際の検証サービスを使用する必要があります。
jacurtis 2017年

1
これは、絶え間なく変化する巨大なデータベースのビットや断片を格納することで誰もがノードに貢献できる素晴らしいブロックチェーンアプリケーションになるでしょう
デコーダー7283

19

ここには多くの良い答えがありますが、それらのほとんどは、ユーザーがサードパーティのサービスに接続するコードを記述したり、USPSを画面からこすり落としたりする「API」ソリューションを望んでいると想定しています。これはすべて順調ですが、実装に関連するビジネス要件とコストを考慮に入れてから、望ましい利益と比較検討する必要があります。

ビジネス要件やデータをシステムに受信する方法によっては、リアルタイムアドレス処理ソリューションが最適な場合があります。リアルタイムソリューションが必要な場合は、Google Maps / Bing / Yahoo APIのライセンス契約と技術的な制限を検討する必要があります。通常、1日に発信できる通話の数が制限されます。USPS WebツールAPIは、システムを使用する方法と理由、およびその後のデータの使用を許可する方法を制限するという点でも同じです。

同時に、静的なアドレスリストを簡単に処理できる優れたサービスプロバイダーがいくつかあります。基本的に、サービスプロバイダーにCSVファイルまたはExcelファイルを提供すると、サービスプロバイダーはそれをクリーンアップして返送します。これは、通常、長期的なコミットメントや義務を伴わない1回限りの取引です。

完全な開示:私はSmartyStreetsの創設者です。米国内の住所の確認を行っています。私たちは簡単にリストCASS認定することができ、アドレス検証WebサービスAPIも提供しています。隠れた料金や契約などはありません。必要がなくなり、立ち去ることができるまで、私たちのサービスを使用します。(契約が必要な携帯電話会社とは異なります。)


1
完璧、まさに私が探していたもの。そして、私はあなたがスタイルを持っていると言いましょう、先生。素敵なサイト。
Cory Mawhorter 2013年

2
私たちはSmartyStreetsを使用しています。
JerSchneid 2013年

17
SmartyStreetの1,000ルックアップのコストは$ 30です。クリックを保存しました。
William Entriken 2016

1,000回のルックアップ=国際の場合66 $
Robert Sinclair、

実際、USPSにはこのためのRESTインターフェイスがありますが、これは非常に重要です。ただし、スクリプトでこのことを実行すると、アドレスでいっぱいのデータベースを検証すると、アクセス禁止されます。ユーザーデータエントリを検証することが許可されているため、APIヒットがランダムに計測されるWebフォームでの使用に適しています。フォームにボット保護が設定されていることを確認してください。そうしないと、APIアクセスが短時間でDoSされます。また、これは米国の住所に対してのみ有効です。
Neil Davis

15

USPSにはオンラインのアドレスクリーナーがあり、誰かがスクリーンをかすめて貧しい人のWebサービスに組み込んでいます。ただし、これを頻繁に行う場合は、USPSアカウントを申請し、独自のWebサービスを呼び出すことをお勧めします。


17
誰もが胸やけをして3日後に拒否の手紙を受け取るのを防ぐために、実際にはUSPS独自のアドレス検証ツールを使用することはほとんど許可されていません。男の画面がそもそもそれを削ったのはそのためです。それは厳密に非営利団体に限定されています。
ニコラスピアセッキ

5
USPSでは、手紙や小包の郵送以外の目的でこのデータを使用することを許可していません。つまり、検索するアドレスにメールを送信する必要があります。

16
USPSは、データベースを再販売またはクレンジングしていない商用利用IFFを許可します。アカウントの資格を取得し、それを使用して、Webフォームから送信されたすべてのアドレスを確認/修正します。
marklark、2011年

2
または、ある時点でに郵送するつもりです。私の会社は当初USPS APIへのアクセスを拒否されていましたが、使用目的を明確にし(そしてAPIを使用して古いデータを修正しないことを表明した)、承認されました。
marklark、2011年

4
メーリングを実行したり、出荷を行うためのアドレスを確認している場合にのみ、USPS」APIを使用することができます。secure.shippingapis.com/registration -あなたはUSPSを通して郵送または船をしない場合は、その代替APIを見つけますライセンスの制限はありません。
マット

9

私のブログの投稿- アドレスストレージのレッスン -を参照します。アドレス検証のプロセスで使用されるいくつかの手法とアルゴリズムについて説明します。私の重要な考えは、「アドレスストレージに怠惰にしないでください。将来的には頭痛の種になるだけです。」

また、この質問をする別のStackOverflow質問があります。資格各国の地理的住所をリレーショナルデータベースに保存する方法


8

私が以前働いていたドイツの会社で社内住所検証サービスを開発する過程で、この問題に取り組むためにいくつかの方法に出会いました。以下の調査結果を要約するために最善を尽くします。

無料のオープンソースソフトウェア

明らかに、誰もが最初にとるアプローチはオープンソースのもの(openstreetmap.orgなど)であり、決して悪い考えではありません。しかし、これを本当に信頼性の高い方法で使用できるかどうかは、結果にどれだけ依存する必要があるかによって大きく異なります。

アドレスは非常に変化しやすいものです。米国の住所を確認することは簡単な作業ではありませんが、耐えられますが、ヨーロッパ、特に英国に広範な郵便番号システムがある場合、オープンソースのアプローチではデータが不足します。

Webサービス/ API

エンタープライズクラスのソフトウェア

もちろん、お金はそれを成し遂げます。しかし、すべてのビジネスや開発者がアドレスルックアップあたり最大$ 0.15(1,000 APIリクエストに対して$ 150)を費やすことができるわけではありません。これは、非常に高価なビジネスモデルであり、アドレス検証APIの大部分が実装しています。

最終的に統合したもの:Streetlayer API

私は手動で住所データを検証するプログラム的なアプローチを採用するつもりはなかったので、上司が私を解雇し、それでも確実で信頼できるものを提供したくないような値札のAPIが必要だという結論に達しました。国際検証結果。

要するに、apilayerによって作成された「streetlayer API」と呼ばれるAPIを統合することになりました。単純なJSON統合、驚くほど正確な検証結果、そして開発者に優しい価格設定は、私は簡単に確信しました。また、毎月100件のリクエストは完全に無料です。

お役に立てれば!


良い答えです。残念ながら、streetlayer APIは来週(2017-07-03)にシャットダウンされます。リクエストあたり15セント未満の代替案はありますか?
クリス

1

http://www.melissadata.comのサービスを使用しました 「アドレスオブジェクト」は非常によく機能します。その高価な、はい。しかし、独自のソリューションを作成するコスト、アプリケーション内のダーティデータのコスト、返送されたメーラー(売り上げの損失など)を考慮すると、コストは正当化されます。


1

また、サーバープラットフォームが多数のリクエストを処理しているか、アプリケーションでプロセス内で実行したい場合は埋め込み可能なSDKとして使用できるSAPのData Qualityソリューションを試すこともできます。アプリケーションで使用し、非常に堅牢でスケーラブルです。


1

redditに見られるように:

$address = urlencode('1600 Pennsylvania Avenue, Washington, DC');
$json = json_decode(file_get_contents("http://where.yahooapis.com/geocode?q=$address&flags=J"));
print_r($json);

1

https://identify.pitneybowes.com/にある Pitney Bowesの「IdentifyAddress」APIを試すことができます。

このサービスは、入力住所を分析し、世界中の既知の住所データベースと比較して、標準化された詳細を出力します。住所を修正し、不足している郵便情報を追加し、該当する郵便局が推奨する形式を使用してフォーマットします。また、追加の住所データベースを使用して、住所の品質、住所のタイプ、音訳(漢字からラテン文字など)、および住所が建物/家屋番号、通り、または都市レベルで検証されるかどうかなど、詳細を提供できるようにします参考情報の。

あなたはサイトで利用可能な多くのサンプルとSDKを見つけるでしょう、そして私はそれを統合するのが非常に簡単であることがわかりました。


0

このサービスを提供している会社があります。大量のメーリングを扱うサービスビューローは、メーリングリスト全体を適切な形式になるようにスクラブします。これにより、送料が割引になります。USPSは、カスタムソリューションの開発に使用できる住所情報のデータベースを販売しています。また、この種のソフトウェアとサービスを提供する認定ベンダーのリストもあります。

ソフトウェアにアドレス検証をフックするためのAPIを備えたパッケージがいくつかあります(多くはありません)。

ただし、これはかなり厄介な問題です。

http://www.usps.com/ncsc/ziplookup/vendorslicensees.htm


0

すでに述べたように、そこには多くのサービスがあります。アドレス全体を本当に検証したい場合は、Webサービスタイプのサービスを使用して、アプリケーションで変更をすばやく認識できるようにすることを強くお勧めします。

上記のサービスに加えて、webservice.netにはこのUSアドレス検証サービスがあります。http://www.webservicex.net/WCF/ServiceDetails.aspx?SID=24


0

Perfect Addressで成功しました。

彼らのデータベースには、すべての米国のストリート名とストリート番号の範囲があります。また、運が良ければ、その種のデータを入手できれば、自由形式の住所フィールドのかなり適切なパーサーとしても機能します。


非常に興味深い...彼らの古代のようなウェブサイトは、彼らがまだビジネスをしているのか、それとも信頼できるのか疑問に思っていますか?
Anthony Griggs

私が使っていた会社に来て久しぶりです。彼らは大きく変わったようには見えませんが、彼らはまだ最新のデータを持っていると主張しています。
Jason DeFontes

0

有効な住所であることを検証することは1つのことです。

ただし、特定の人物が特定の住所に住んでいることを検証しようとしている場合、ほとんどの保証はその住所へのテストメールであり、その人物が組織化されているか、その住所の誰かを知っているかどうかさえわかりません。

そうでなければ、人々は彼らが存在することを知っている任意のランダムなアドレスを指定することができ、それはあなたにとって何の意味もないでしょう。

即時の結果を得るためにできる最善の方法は、銀行の明細書またはその他の最近の居住証明の頭の写真またはスキャンしたコピーをユーザーに送信するようリクエストすることです。偽造は、画像フォレンジック分析の基本レベルで簡単にわかります。


0

グローバルな解決策はありません。どの国でも、せいぜいトリッキーです。

英国では、PostOfficeは郵便の住所を管理し、検証目的で(有料で)住所情報を提供できます。

政府機関も住所の広範なリストを保持しており、NLPG(National Land and Property Gazetteer)で中央に照合されます。

これらのリストに対して実際に検証することは非常に困難です。ほとんどの人は、郵便局が住所を保持しているため、その住所を正確に把握していません。一部の企業は、特定の路上に何がいるのかさえ知りません。

あなたの最善の策は、この種のことを専門とする会社にアプローチすることです。


0

米国ベースの住所データの場合、私の会社はGeoStanを使用しました。CとJavaのバインディングがあります(Perlバインディングを作成しました)。これは市販の製品であり、安くはありません。ただし、それは非常に高速(毎秒300アドレスまで)で、CASS認定(USPSバルクメール割引)、DPV(配信ポイント検証)フラグ、LON / LATジオコーディングなどの機能を提供します。

PerlモジュールGeo :: PostalAddressがありますが、ヒューリスティックを使用しており、GeoStanで言及されている他の機能はありません。

編集:一部の人は「自分で行う」と述べていますが、これを行うことに決めた場合、最初に役立つ情報源は、住所情報を含む米国に関する多くの情報を含む米国国勢調査タイガーデータセットです。




0

以下のサービスを提供するFixaddress.comサービスを利用できます。

1)アドレス検証。

2)アドレス修正。

3)スペル修正に対処します。

4)音声の間違いを修正します。

Fixaddress.comは、USPSおよびTigerデータを参照データとして使用します。

詳細については、以下のリンクをご覧ください。

http://www.fixaddress.com/



0

最初に、住所の検証によって意味を明確にすることが役立つ場合があります。住所を地理的に特定し、実際に存在することを確認していますか?アドレスがメールを受信することを確認しようとしていますか?完全な開示として、私はService Objectsという会社で働いており、これら2つのシナリオの両方に対処するのに役立つAPIを提供しています。物理的な住所と郵送先の住所(場合によっては異なる場合があります)の違いについてクライアントからよく質問を受けますが、ここでそれを区別することが重要だと思います。グーグルマップは非常に便利な地理位置情報ツールですが、実際に住所を検証し、gmapsが住所を「考える」場所を超えて情報を提供することに関しては、あまり効果がありません。これらのトピックを特定してさらに説明するのに役立つブログがいくつかあります。

郵送先住所と物理住所:違いは何ですか?

DOTSアドレス検証とGoogleマップの違い:違いは何ですか?

質問に答えるには、適切なツールと信頼できるデータソースを使用して住所の検証を完全に実行できます。私たちは、住所の地理的位置を特定し、住所を検証するのに役立つAPIの形でその解決策に取り組んでいます。前者は実際に住所を見つけるのに役立ち、後者は住所が郵送目的で有効かどうかを判断するのに役立ちます。興味がある場合は、以下の両方へのリンクがあります

アドレス検証

アドレスジオコーディング


-1

米国の住所の場合、有効な州を要求し、zipが有効であることを確認できます。郵便番号が正しい状態であることを確認することもできますが、それ以上に、多くの偽陰性を提供しない多くのテストを実行できるとは思いません。

何をしようとしていますか-単純な間違いを防いだり、ある種のIDチェックを強制したりしますか?


サードパーティの有料サービスを使用する必要があります。
mmcdole 2008

サードパーティのツールを使用する必要はありません。USPSには、これを行うWebサービスがあります。
brian d foy 2008

実際に、実行しているタスクが「この住所が地域の郵便サービスに受け入れ可能であることを確認する」である場合、米国ではUSPSを第二者と見なすことができます(その場合、住所を送信したクライアントは、第三者)。
tripleee

-1

APIは、住所データの解析と正規化に重要な役割を果たします。これは、USPSなどの会社が提供する郵便配達や、UPSやFedExなどの会社が提供する小包の郵送先住所をまとめて認識および検証するのに役立ちます。彼らが機能する彼らの方法は、住所検証サービスがUSPS標準に正規化された値を持つ解析された住所を返すということです。詳しくは、https//www.tomtom.com/blog/maps/what-is-address-validation/をご覧ください。


1
あなたの回答は質が良いようですが、これまでのすべての回答にはtomtom.comへのリンクが含まれているため、スパムのフラ​​グが付けられる可能性があります。まだ気付いていない場合は、次の記事を読んでください。スパマーにならない方法
Ardent Coder
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.