一个小模块,用于清理、解析和标准化地址
GeoLiberator的Python项目详细描述
地理解放者python模块
这个模块是一个地址分析器。它接受一个地址作为参数并输出一个标准化版本。否则,如果解析器失败,将产生“other”。 “它与自由派相似,因为它不加区别地接受任何变体地址。 它是一个解放者,因为它将地址从不一致中解放出来。” (注意:此模块不进行地址验证,但它将尽其所能解析您向其抛出的任何地址)
用法:
首先,使用所需的句柄导入,以便轻松调用模块,
importGeoLiberatorasGLGL.geoLiberate("123 Example St","address")# 'address' to parse the full address#Output: 123 EXAMPLE STREETGL.geoLiberate("123 Example St","number")# 'number' to parse the address house number#Output: 123GL.geoLiberate("123 Example St","street")# 'street' to parse the full street#Output: EXAMPLE STREET
第一个参数是数据类型字符串的任何地址。
正如您可能已经注意到的,第二个参数决定解析什么。(注意:如果没有参数,默认情况下解析完整地址)
- “地址”-完整地址
- “号码”-门牌号
- “街道”-整条街
以下函数的第一个参数是包含地址列表的文件。它自动循环行并解析每个地址。
GL.autoGeoLiberate("file.txt","street","output_file_name.txt")# 'street' to parse full street name#If no output file name given, program will print all parsed addresses
假设“file.txt”包含以下内容:
123 Bob Rd
321 N Johnson Aven
123-4 2nd St
输出如下:
123 BOB ROAD
321 NORTH JOHNSON AVENUE
123-4 2nd STREET
对于文件中非常长的地址列表,建议在程序中使用autogeolibere()并在带有标记--status
(简称-S
)的cli中运行它来监视模块的进度。就像这样:python my_progam.py --status
用于开发目的:
address_object=GL.GeoLiberator("123 Example St")# Create a 'GeoLiberator Object' with address as an argument#This new address object can then be parsed using the dot operator like so:address_object.getAddress()address_object.getAddressNum()address_object.getStreet()
这些成员函数返回一个字符串值。
函数参数:
getAddress(log='')
“log”参数用于在日志文件中输入文件名append所有地址结果。 (注意:这些函数总是返回一个值)
版权所有
版权所有(c)2019 Python打包管理局。在麻省理工学院的许可下发布。