É mesmo possível realizar a validação de endereço (físico, não e-mail)? Parece que o grande número de formatos de endereço, mesmo nos Estados Unidos, tornaria essa tarefa bastante difícil. Por outro lado, parece uma tarefa que seria necessária para vários requisitos de negócios.
validation
street-address
Kevin Pang
fonte
fonte
Respostas:
Esta é uma maneira gratuita e tipo "fora da caixa" de fazer isso. Não é 100% perfeito, mas deve rejeitar endereços claramente inexistentes.
Envie o endereço completo para o serviço da web de geocodificação do Google . Este serviço tenta retornar as coordenadas exatas do local que você o alimenta, ou seja, latitude e longitude.
Na minha experiência, se o endereço for inválido, você receberá um resultado de 602 do serviço. Definitivamente, há a possibilidade de falsos positivos ou falsos negativos, mas usado em conjunto com outras verificações de consistência pode ser útil.
( O serviço de geocodificação do Yahoo , por outro lado, retornará as coordenadas do centro da cidade se a cidade existir, mas o restante do endereço for falso. Potencialmente útil, desde que você preste muita atenção ao campo "precisão" em o resultado).
fonte
Há uma série de boas respostas aqui, mas a maioria delas pressupõe que o usuário deseja uma solução "API" em que deve escrever código para se conectar a um serviço de terceiros e / ou copiar a tela do USPS. Tudo isso é muito bom, mas deve ser considerado nos requisitos de negócios e custos associados à implementação e, em seguida, ponderado em relação aos benefícios desejados.
Dependendo dos requisitos de negócios e da maneira como os dados são recebidos no sistema, uma solução de processamento de endereços em tempo real pode ser a melhor aposta. Se uma solução em tempo real for necessária, você deve considerar o contrato de licença e as limitações técnicas das APIs do Google Maps / Bing / Yahoo. Eles normalmente limitam o número de chamadas que você pode fazer a cada dia. A API de ferramentas da Web do USPS é a mesma, mas restringe como / por que você pode usar o sistema e como você tem permissão para usar os dados posteriormente.
Ao mesmo tempo, há um punhado de grandes provedores de serviços que podem processar facilmente uma lista estática de endereços. Basicamente, você dá ao provedor de serviços um arquivo CSV ou Excel, eles o limpam e o devolvem a você. É um acordo único, sem compromisso ou obrigação de longo prazo - geralmente.
Divulgação completa: sou o fundador da SmartyStreets. Fazemos verificação de endereço para endereços dentro dos Estados Unidos. Podemos facilmente certificar uma lista de CASS e também oferecemos uma API de serviço web de verificação de endereço . Não temos taxas ocultas, contratos ou qualquer coisa. Você usa nosso serviço até não precisar mais dele e pode ir embora. (Ao contrário das empresas de telefonia celular que exigem um contrato.)
fonte
O USPS tem um limpador de endereços online , que alguém raspou na tela de um serviço da web de um homem pobre. No entanto, se você estiver fazendo isso com bastante frequência, seria uma ideia melhor se inscrever para uma conta do USPS e ligar para o seu próprio serviço web .
fonte
Vou encaminhá-lo para a minha postagem do blog - Uma lição sobre armazenamento de endereço , vou entrar em algumas das técnicas e algoritmos usados no processo de validação de endereço. Meu pensamento principal é "Não seja preguiçoso com o armazenamento de endereços, isso só lhe causará dores de cabeça no futuro!"
Além disso, há outra pergunta StackOverflow que faz esta pergunta. Intitulado Como os endereços geográficos internacionais devem ser armazenados em um banco de dados relacional .
fonte
Durante o desenvolvimento de um serviço interno de verificação de endereço em uma empresa alemã para a qual trabalhava, descobri várias maneiras de resolver esse problema. Vou fazer o meu melhor para resumir minhas descobertas abaixo:
Software de código aberto gratuito
Claramente, a primeira abordagem que qualquer um faria é de código aberto (como o openstreetmap.org ), o que nunca é uma má ideia. Mas se você pode realmente colocar isso em uso bom e confiável depende muito de quanto você precisa confiar nos resultados.
Os endereços são algo extremamente variável. Verificar endereços nos EUA não é uma tarefa fácil, mas suportável, mas quando você estiver indo para a Europa, especialmente o Reino Unido com seu extenso sistema de código postal, a abordagem de código aberto simplesmente não terá dados.
Serviços da Web / APIs
Software de classe empresarial
O dinheiro resolve, obviamente. Mas nem todo negócio ou desenvolvedor pode gastar ~ $ 0,15 por consulta de endereço (isso é $ 150 para 1.000 solicitações de API) - um modelo de negócios muito caro que a grande maioria das APIs de validação de endereço implementou.
O que acabei integrando: API do streetlayer
Como não estava disposto a adotar a abordagem programática de verificar os dados de endereço manualmente, finalmente cheguei à conclusão de que precisava de uma API com um preço que não fizesse meu chefe querer me demitir e ainda fornecer informações sólidas e confiáveis resultados de verificação internacional.
Resumindo, acabei integrando uma API construída por apilayer, chamada de "API streetlayer". Fui facilmente convencido por uma integração JSON simples, resultados de validação surpreendentemente precisos e seu preço amigável ao desenvolvedor. Além disso, 100 solicitações / mês são totalmente gratuitas.
Espero que isto ajude!
fonte
Eu usei os serviços de http://www.melissadata.com Seu "objeto de endereço" funciona muito bem. É caro, sim. Mas quando você considera os custos de escrever suas próprias soluções, o custo de dados sujos em seu aplicativo, correspondências devolvidas - vendas perdidas e assim por diante - os custos podem ser justificados.
fonte
Você também pode experimentar as soluções de qualidade de dados da SAP, que estão disponíveis em uma plataforma de servidor para processar um grande número de solicitações ou como um SDK embutido se quiser executá-lo em processo com seu aplicativo. Nós o usamos em nosso aplicativo e é muito robusto e escalonável.
fonte
Conforme visto no reddit :
fonte
Você pode experimentar a Api “IdentifyAddress” da Pitney Bowes disponível em - https://identify.pitneybowes.com/
O serviço analisa e compara os endereços de entrada com os bancos de dados de endereços conhecidos em todo o mundo para gerar um detalhe padronizado. Ele corrige endereços, adiciona informações postais ausentes e as formata usando o formato preferido pela autoridade postal aplicável. Eu também uso bancos de dados de endereços adicionais para fornecer detalhes aprimorados, incluindo qualidade de endereço, tipo de endereço, transliteração (como de caracteres Kanji chineses para caracteres latinos) e se um endereço é validado para o local / número da casa, rua ou cidade de informações de referência.
Você encontrará vários samples e sdk disponíveis no site e achei extremamente fácil de integrar.
fonte
Existem empresas que prestam este serviço. Os bureaus de serviço que lidam com mala direta em massa irão limpar uma lista de mala direta inteira para que esteja no formato adequado, o que resulta em um desconto na postagem. O USPS vende bancos de dados de informações de endereço que podem ser usados para desenvolver soluções personalizadas. Eles também têm listas de fornecedores aprovados que fornecem esse tipo de software e serviço.
Existem alguns (mas não muitos) pacotes que possuem APIs para conectar a validação de endereço em seu software.
No entanto, você está certo de que é um problema bastante desagradável.
http://www.usps.com/ncsc/ziplookup/vendorslicensees.htm
fonte
Conforme mencionado, existem muitos serviços por aí, se você está procurando validar verdadeiramente o endereço inteiro, então eu recomendo fortemente ir com um serviço do tipo Web Service para garantir que as alterações possam ser rapidamente reconhecidas pelo seu aplicativo.
Além dos serviços listados acima, webservice.net tem este serviço de validação de endereço dos EUA. http://www.webservicex.net/WCF/ServiceDetails.aspx?SID=24
fonte
Tivemos sucesso com Perfect Address .
Seu banco de dados contém todos os nomes de ruas e intervalos de números de ruas dos EUA. Também atua como um analisador bastante decente para campos de endereço de formato livre, se você tiver a sorte de ter esse tipo de dados.
fonte
Validar se é um endereço válido é uma coisa.
Mas se você está tentando validar a residência de uma pessoa em um determinado endereço, sua única quase garantia seria um teste de correspondência para o endereço, e mesmo assim não é certo se a pessoa é organizada ou conhece alguém naquele endereço.
Caso contrário, as pessoas poderiam apenas especificar um endereço aleatório arbitrário que elas sabem que existe e isso não significaria nada para você.
O melhor que você pode fazer para obter resultados imediatos é solicitar que o usuário envie uma cópia fotografada / digitalizada do chefe de seu extrato bancário ou algum outro comprovante de residência recente, porque pelo menos então eles terão que se esforçar mais para esquecê-lo, e falsificar coisas ditas aparecem facilmente com um nível básico de análise forense de imagens.
fonte
Não existe uma solução global. Para qualquer país, é, na melhor das hipóteses, bastante complicado.
No Reino Unido, o PostOffice controla os endereços postais e pode fornecer (a um custo) informações de endereço para fins de validação.
As agências governamentais também mantêm uma extensa lista de endereços, e estes são coletados centralmente no NLPG (National Land and Property Gazetteer).
Na verdade, validar essas listas é muito difícil. A maioria das pessoas nem mesmo sabe exatamente como seu endereço é mantido pelo PostOffice. Algumas empresas nem sabem o número de unidades em uma determinada rua.
Sua melhor aposta é procurar uma empresa especializada nesse tipo de coisa.
fonte
Para dados de endereço baseados nos Estados Unidos, minha empresa usou GeoStan . Ele tem ligações para C e Java (e criamos uma ligação Perl). Observe que é um produto comercial e não é barato. Porém, é bastante rápido (aproximadamente 300 endereços por segundo) e oferece recursos como certificação CASS (desconto de correio em massa do USPS), sinalização DPV (verificação do ponto de entrega) e geocodificação LON / LAT.
Existe um módulo Perl Geo :: PostalAddress , mas ele usa heurísticas e não possui os outros recursos mencionados para GeoStan.
Editar: alguns mencionaram 'fazer você mesmo'; se você decidir fazer isso, uma boa fonte de informação para começar é o conjunto de dados do tigre do censo dos EUA , que contém muitas informações sobre os EUA, incluindo informações de endereço.
fonte
O Yahoo também tem uma API Placemaker. É bom apenas para locais, mas tem uma identificação universal para todos os locais do mundo.
Parece que não existe um padrão na lista ISO .
fonte
NAICS.com está lançando uma API que irá adicionar todos os tipos de dados comerciais importantes, incluindo endereço. Isso aconteceria instantaneamente à medida que os formulários do seu site são processados. https://www.naics.com/business-intelligence-api/
fonte
O serviço Fixaddress.com está disponível e fornece os seguintes serviços,
1) Validação de endereço.
2) Correção de endereço.
3) Correção ortográfica de endereços.
4) Corrija os erros fonéticos dos endereços.
Fixaddress.com usa dados USPS e Tiger como dados de referência.
Para obter mais detalhes, visite o link abaixo,
http://www.fixaddress.com/
fonte
Uma área onde as pesquisas de endereço devem ser realizadas de forma confiável é para os serviços VOIP E911. Conheço empresas que usam os seguintes serviços de forma confiável para isso:
Bandwidth.com 9-1-1 Acesso API Validação de endereço MSAG
MSAG = Guia principal de endereços de rua
https://www.bandwidth.com/9-1-1/
API SmartyStreet US Street Address
https://smartystreets.com/docs/cloud/us-street-api
fonte
Para começar, pode ser útil esclarecer o que você entende por validação de endereço. Você deseja localizar geograficamente um endereço e garantir que ele realmente exista? Você está tentando garantir que um endereço receba correspondência? Divulgação completa, trabalho para uma empresa chamada Service Objects e oferecemos APIs que ajudam a abordar esses dois cenários. Freqüentemente, recebemos perguntas de nossos clientes sobre a diferenciação entre um endereço físico e um endereço para correspondência (que às vezes pode ser diferente) e acho que essa seria uma distinção importante a fazer aqui. Embora o google maps seja uma ferramenta de geolocalização muito útil, não vai fazer muito no que diz respeito a realmente validar um endereço e fornecer informações além de onde o gmaps "pensa" que o endereço está. Temos alguns blogs que podem ajudar a identificar e explicar melhor esses tópicos:
Endereço postal vs endereço físico: qual é a diferença?
Validação de endereço DOTS vs. Google Maps: Qual é a diferença?
Para responder à sua pergunta, você pode realizar a validação de endereço com as ferramentas certas e fontes de dados confiáveis. Trabalhamos em soluções para isso na forma de APIs que ajudariam a geolocalização de endereços e validar endereços. O primeiro ajudaria a localizar realmente um endereço e o último ajudaria a determinar se um endereço é válido para fins de correspondência. Se você estiver interessado, há links para ambos abaixo
Validação de Endereço
Geocodificação de Endereço
fonte
Para endereços nos EUA, você pode exigir um estado válido e verificar se o CEP é válido. Você pode até verificar se o código postal está no estado correto, mas, além disso, não acho que haja muitos testes que você possa executar que não forneçam muitos falsos negativos.
O que você está tentando fazer - evitar erros simples ou impor algum tipo de verificação de identidade?
fonte
As APIs podem desempenhar um papel crucial na análise e normalização dos dados de endereços. Isso é útil em termos de reconhecimento e verificação de endereços de correspondência em massa para entrega postal fornecida por empresas como a USPS e remessa de pacotes fornecida por empresas como UPS e FedEx. A maneira como funciona é que o serviço de validação de endereço retornará um endereço de rua analisado com valores normalizados para o padrão USPS. Você pode saber mais sobre isso neste post: https://www.tomtom.com/blog/maps/what-is-address-validation/
fonte