在 Django/Python 中标准化街道地址

2024-02-03

我有一个 Django 表单,其中一个字段是TextInput街道地址。

我想标准化数据。例如:

>> normalize('420 East 24th St.')
'420 E. 24th Street'

>> normalize('221 Amsterdam Av')
'221 Amsterdam Ave.'

>> normalize('221 Amsterdam Avenue')
'221 Amsterdam Ave.'

或类似的东西。我已经在使用了geopy http://code.google.com/p/geopy/用于地理编码。也许这可能有帮助?

另外:我应该在哪里标准化?在数据库模型中还是在表单字段的 clean 函数中?


最可靠的方法是使用真正的地址验证服务。它不仅会根据 USPS 标准对地址组成部分进行标准化(规范化)(请参阅出版物 28 http://pe.usps.com/cpim/ftp/pubs/pub28/pub28.pdf)但您也会确定该地址是真实的。

全面披露:我在 SmartyStreets 工作,它提供了这样一个service http://www.smartystreets.com/products/liveaddress-api。下面是一些非常简单的 Python 示例代码,展示了如何通过 HTTP GET 请求使用我们的服务:

https://github.com/smartystreets/LiveAddressSamples/blob/master/python/street-address.py https://github.com/smartystreets/LiveAddressSamples/blob/master/python/street-address.py

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Django/Python 中标准化街道地址 的相关文章

  • Python PAM 模块的安全问题?

    我有兴趣编写一个 PAM 模块 该模块将利用流行的 Unix 登录身份验证机制 我过去的大部分编程经验都是使用 Python 进行的 并且我正在交互的系统已经有一个 Python API 我用谷歌搜索发现pam python http pa
  • 如何生成给定范围内的回文数列表?

    假设范围是 1 X 120 这是我尝试过的 gt gt gt def isPalindrome s check if a number is a Palindrome s str s return s s 1 gt gt gt def ge
  • Pycharm Python 控制台不打印输出

    我有一个从 Pycharm python 控制台调用的函数 但没有显示输出 In 2 def problem1 6 for i in range 1 101 2 print i end In 3 problem1 6 In 4 另一方面 像
  • 如何打印没有类型的defaultdict变量?

    在下面的代码中 from collections import defaultdict confusion proba dict defaultdict float for i in xrange 10 confusion proba di
  • Python 多处理示例不起作用

    我正在尝试学习如何使用multiprocessing但我无法让它发挥作用 这是代码文档 http docs python org 2 library multiprocessing html from multiprocessing imp
  • Python tcl 未正确安装

    我刚刚为 python 安装了graphics py 但是当我尝试运行以下代码时 from graphics import def main win GraphWin My Circle 100 100 c Circle Point 50
  • 安装后 Anaconda 提示损坏

    我刚刚安装张量流GPU创建单独的后环境按照以下指示here https github com antoniosehk keras tensorflow windows installation 但是 安装后当我关闭提示窗口并打开新航站楼弹出
  • 如何使用装饰器禁用某些功能的中间件?

    我想模仿的行为csrf exempt see here https docs djangoproject com en 1 11 ref csrf django views decorators csrf csrf exempt and h
  • Django在模板中形成多个选择框大小

    我有一个模板
  • keras加载模型错误尝试将包含17层的权重文件加载到0层的模型中

    我目前正在使用 keras 开发 vgg16 模型 我用我的一些图层微调 vgg 模型 拟合我的模型 训练 后 我保存我的模型model save name h5 可以毫无问题地保存 但是 当我尝试使用以下命令重新加载模型时load mod
  • 从列表中的数据框列中搜索部分字符串匹配 - Pandas - Python

    我有一个清单 things A1 B2 C3 我有一个 pandas 数据框 其中有一列包含用分号分隔的值 某些行将包含与上面列表中的一项的匹配 它不会是完美的匹配 因为它在其中包含字符串的其他部分 该列 例如 该列中的一行可能有 哇 这里
  • 在 NumPy 中获取 ndarray 的索引和值

    我有一个 ndarrayA任意维数N 我想创建一个数组B元组 数组或列表 其中第一个N每个元组中的元素是索引 最后一个元素是该索引的值A 例如 A array 1 2 3 4 5 6 Then B 0 0 1 0 1 2 0 2 3 1 0
  • 在pyyaml中表示具有相同基类的不同类的实例

    我有一些单元测试集 希望将每个测试运行的结果存储为 YAML 文件以供进一步分析 YAML 格式的转储数据在几个方面满足我的需求 但测试属于不同的套装 结果有不同的父类 这是我所拥有的示例 gt gt gt rz shorthand for
  • 如何将 numpy.matrix 提高到非整数幂?

    The 运算符为numpy matrix不支持非整数幂 gt gt gt m matrix 1 0 0 5 0 5 gt gt gt m 2 5 TypeError exponent must be an integer 我想要的是 oct
  • Numpy 优化

    我有一个根据条件分配值的函数 我的数据集大小通常在 30 50k 范围内 我不确定这是否是使用 numpy 的正确方法 但是当数字超过 5k 时 它会变得非常慢 有没有更好的方法让它更快 import numpy as np N 5000
  • Python 3 中“map”类型的对象没有 len()

    我在使用 Python 3 时遇到问题 我得到了 Python 2 7 代码 目前我正在尝试更新它 我收到错误 类型错误 map 类型的对象没有 len 在这部分 str len seed candidates 在我像这样初始化它之前 se
  • 在Python中重置生成器对象

    我有一个由多个yield 返回的生成器对象 准备调用该生成器是相当耗时的操作 这就是为什么我想多次重复使用生成器 y FunctionWithYield for x in y print x here must be something t
  • 在 Pandas DataFrame Python 中添加新列[重复]

    这个问题在这里已经有答案了 例如 我在 Pandas 中有数据框 Col1 Col2 A 1 B 2 C 3 现在 如果我想再添加一个名为 Col3 的列 并且该值基于 Col2 式中 如果Col2 gt 1 则Col3为0 否则为1 所以
  • Spark.read 在 Databricks 中给出 KrbException

    我正在尝试从 databricks 笔记本连接到 SQL 数据库 以下是我的代码 jdbcDF spark read format com microsoft sqlserver jdbc spark option url jdbc sql
  • Pandas 与 Numpy 数据帧

    看这几行代码 df2 df copy df2 1 df 1 df 1 values 1 df2 ix 0 0 我们的教练说我们需要使用 values属性来访问底层的 numpy 数组 否则我们的代码将无法工作 我知道 pandas Data

随机推荐

  • HTTP 下载非常大的文件

    我正在使用 Python Twisted 开发 Web 应用程序 我希望用户能够下载非常大的文件 gt 100 Mb 当然 我不想加载 服务器 内存中的所有文件 服务器端我有这个想法 request setHeader Content Ty
  • 将字符串添加到 List 列表

    我是 C 新手 我需要执行以下操作 我需要声明一个列表 List
  • 在nodejs工作线程内调用函数

    这是我的工人 const Worker require worker threads const worker new Worker function hello console log hello world eval true work
  • Apache tomcat7 作为 Windows 服务

    我正在尝试为 Apache tomcat 7 0 45 创建 Windows 服务 在 Windows 版本 7 中 我执行了这个 C tomcat7 bin gt service install Mytomcat7 Windows 服务已
  • 处理阻塞 .NET 套接字的超时

    使用 Accept 方法创建的 TcpClient 实例用于管理客户端连接 当我需要终止服务器线程时就会出现问题 因为它在接收调用时被阻塞 所以我设置了一个 TcpClient ReceiveTimeout 以便循环每个n毫秒来测试退出条件
  • 如何用python创建0年的日期时间对象

    正如标题所说 如果我尝试这样做 它会给我一个年份值的 ValueError 但我想要一个年份为 0 的日期时间 有什么方法可以做到这一点吗 从文档 datetime 模块导出以下常量 datetime MINYEAR 日期或中允许的最小年份
  • 使用 Office365 SMTP 设置 PHPMailer

    我正在尝试设置 PHPMailer 以便我们的一位客户能够从他们自己的帐户自动生成电子邮件 我登录了他们的Office 365帐户 发现PHPMailer所需的设置是 Host smtp office365 com Port 587 Aut
  • Doctrine 2.3 实体生成器:样本、文档?

    Doctrine 可以基于小数据输入生成实体 包括关系信息 但是 我未能找到有关该主题的任何示例或简明信息 官方文档只有一小段 有一个小的命令行示例 完全没有解释什么 任何人都可以参考这方面的书籍 文章甚至代码示例吗 首先你需要引导程序Do
  • 当键盘存在时,如何使 UITextField 向上移动 - 开始编辑?

    使用 iOS SDK 我有一个UIView with UITextField调出键盘 我需要它能够 允许滚动内容UIScrollView键盘打开后即可查看其他文本字段 自动 跳跃 通过向上滚动 或缩短 我知道我需要一个UIScrollVie
  • iPhone 开发 - 开发和分发配置之间有什么区别?

    我无法在苹果文档中找到关于两者之间区别的明确解释发展 and 分配供应 我目前正在使用开发配置在我的 iPhone 上进行开发和测试 我打算将该应用程序分发到我的 Beta 测试中 我想知道 我需要使用吗分配供应 我应该为每个单独的测试人员
  • Android:获取列中的最高值

    我有一个指向内容的 URL 我需要获取其中一列中包含的最高值 是否有任何聚合函数可以完成该任务 或者我必须手动执行此操作 如果您正在查询 Android 内容提供商 您应该能够通过传递来实现此目的MAX COLUMN NAME 进入选择参数
  • 运行脚本标签是否会阻止其他脚本标签的下载?

    这是来自索引 html in HTML5 样板 https github com h5bp html5 boilerplate blob master index html 就在之前 tag
  • 如何在 C++ 中使用带有用户输入的枚举

    我正在制作一个简单的剪刀石头布游戏 我需要使用枚举数据结构 我的问题是 由于从 int userInput 到 Throws userThrow 的转换无效 我无法编译以下代码 enum Throws R P S int userInput
  • 如何启用 Qt5 中已弃用的功能

    我想将 Qt4 程序移植到 Qt5 并且某些函数未定义 例如 QHeaderView setMoveable 但我在 qheaderview h 文件中看到 通过一些神奇的定义 QT DEPRECATED SINCE 应该可以重新启用它们
  • 如何检查一个句柄是否应该关闭?

    如果 ShellExecuteEx 返回 false 是否应该关闭句柄 function EditAndWait const AFileName string boolean var Info TShellExecuteInfo begin
  • UILocalNotification 在 iOS 10 中已弃用

    这可能是一个提前的问题 但我想知道用什么代替UILocalNotification在 iOS 10 中 我正在开发一个具有部署目标 iOS 8 的应用程序 所以可以使用吗UILocalNotification 是的 您可以使用UILocal
  • 如何在线程中使用notifyDataSetChanged()

    我创建一个线程来更新我的数据并尝试这样做notifyDataSetChanged在我的列表视图中 private class ReceiverThread extends Thread Override public void run up
  • 通过后退按钮关闭 Ionic 4 中的模态框

    我有一个Modal in Ionic 4 我想close它 当用户按下返回键在她的手机上 或浏览器中的后退按钮 有谁知道我该怎么做 编辑 更多细节 我有一个打开模式的按钮 async onClick const modal await th
  • 在 C# 中检查来自不同类的变量

    问候 我有2节课 一个称为 程序 另一个称为 日志 名为 Programs 的类有public const string m sEnviron 在顶部附近 我需要通过名为 Logs 的类检查 m sEnviron 变量设置的内容 变量 m
  • 在 Django/Python 中标准化街道地址

    我有一个 Django 表单 其中一个字段是TextInput街道地址 我想标准化数据 例如 gt gt normalize 420 East 24th St 420 E 24th Street gt gt normalize 221 Am