Metadata-Version: 2.1
Name: pygeocoding
Version: 1.1.2
Summary: 地址标准化工具
Author: XiaoBai
Author-email: 1808269437@qq.com
License: MIT
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.6
Description-Content-Type: text/markdown
License-File: LICENSE

# geocoding

#### 介绍
* 本项目旨在将不规范(或者连续)的文本地址进行尽可能的**标准化**, 以及对两个地址进行**相似度的计算**。
* 该模块为 [bitlap/geocoding](https://github.com/bitlap/geocoding) 项目的Python实现，原项目为Kotlin开发
* 安装命令 pip install GeocodingX

地理编码技术, 主要分为如下步骤
 * 地址标准库
 * 地址标准化
 * 相似度计算


# 1. 数据测试

方法调用: `Geocoding` 类
 * normalizing: 标准化
 * analyze: 解析成分词文档
 * similarity: 相似度计算
 * similarityWithResult: 相似度计算, 返回包含更多丰富的数据
 
## 1.1 标准化

```markdown
>> 输入: 上海上海宝山区宝山区【新沪路58弄11-802  水韵华庭 】 (水韵华庭附近)号大都会3号楼2单元1303
>> 输出:
Address(
	provinceId=310000000000, province=上海, 
	cityId=310100000000, city=上海市, 
	districtId=310113000000, district=宝山区, 
	streetId=None, street=None, 
	townId=None, town=None, 
	villageId=None, village=None, 
	road=新沪路, 
	road_num=58弄, 
	building_num=11-802, 
	text=水韵华庭水韵华庭附近
)
```
* 返回的对象解释
    * province相关: 省
    * city相关: 市
    * district相关: 区、县
    * street相关: 街道
    * town相关: 乡镇
    * village相关: 村
    * road: 道路
    * roadNum: 路号
    * buildingNum: 建筑物号
    * text: 标准化后为匹配的地址。一般包含小区, 商场名称等信息

> 注: 如果对text的结果不是很满意, 比如出现重复或不准确, 可以通过分词的手段解决

```java
>> 输入:
  浙江金华义乌市南陈小区8幢2号
  浙江金华义乌市稠城街道浙江省义乌市宾王路99号后面南陈小区8栋2号
>> 输出: 
  0.6795216660765248
```

```java
>> 输入:
  山东省沂水县四十里堡镇东艾家庄村206号
  浙江金华义乌市南陈小区8幢2号
>> 输出:
  0.0
 ```

## 感谢
* 感谢[原作者](https://github.com/bitlap/geocoding)的辛苦付出！
