2010-08-23 3 views
2

Мы разрабатываем наш сайт в формате django и с python. в настоящее время мы ищем api/a инструмент для проверки физических добавлений, которые вводит пользователь. Ему не нужно быть сложным. Нам просто нужно избегать регистрации спама. Для этого шага нам нужно проверить, принадлежат ли страны, государства, города и zipcode друг к другу. Например, Беркли как город с Zipcode 94704 не находится в штате Нью-Йорк и т. Д. Любые мысли?адрес электронной почты валидация в python/django

ответ

1

Возможно, вы можете использовать службу GeoCoding (например, Google), чтобы проверить, существует ли адрес.

+0

благодарит Мэтью. это дает нам эту способность проверять, принадлежит ли zipcode к городу или государству? Я стараюсь избегать использования координаторов! – Sara

+0

Я предполагаю, что если вы передадите недопустимый почтовый индекс, служба GeoCoding не найдет адрес. –

3

Попробуйте pygeocoder. Это оболочка Python для API геокодирования Google V3 API. Он может удовлетворить некоторые ваши потребности в проверке.

from pygeocoder import Geocoder 
g = Geocoder() 
g.geocode("1 wellington, ottawa").valid_address 
>>> True 
g.geocode("1 wellington, chicago").valid_address 
>>> False 

Это может занять некоторое незначительные орфографические ошибки слишком

result = g.geocode("1600 amphiteather, mountain view") 
result.valid_address 
>>> True 
print result 
>>> 1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA 
g.geocode("16000000 amphitheater, mountain view").valid_address 
>>> False 

Но Google не всегда правильный почтовый/почтовый индекс. У USPS есть публичный API для США, я считаю.

Юридическая информация: Я сделал pygeocoder

+0

Привет! Увидев этот пост, я пошел и установил pygeocoder. Кажется, очень круто. У меня есть связанный с этим вопрос. Вы можете помочь? http://stackoverflow.com/questions/24921545/how-to-assign-to-a-django-pointfield-model-attribute –