目录
专栏导读
库的介绍
-
将完整的地址中提取出省、市、县三级地名,或者乡镇、村、社区两级详细地名,你可以使用jionlp实现快速解析。在使用之前,你需要先安装这个库。
库的安装
-
地址拆分库——jionlp
pip install jionlp -i https://pypi.tuna.tsinghua.edu.cn/simple/
-
读取Excel库——openpyxl
pip install openpyxl -i https://pypi.tuna.tsinghua.edu.cn/simple/
-
写入Excel库——xlsxwriter
pip install xlsxwriter -i https://pypi.tuna.tsinghua.edu.cn/simple/
数据准备
目录结构
完整代码
# -*- coding: UTF-8 -*-
'''
@Project :地址省市区分离
@File :main.py
@IDE :PyCharm
@Author :一晌小贪欢(278865463@qq.COM)
@Date :2024/4/19 10:13
'''
import os
import openpyxl
import xlsxwriter
import jionlp
for f in os.listdir("./数据源/"):
# 打开 Excel 文件,获取 Workbook 对象
workbook = openpyxl.load_workbook('./数据源/' + os.listdir('./数据源/')[0], read_only=True)
# 选择需要读取数据的 Sheet,获取 Worksheet 对象
worksheet = workbook.active
workbook_w = xlsxwriter.Workbook(f'./结果/拆分结果-{f}')
worksheet_w = workbook_w.add_worksheet()
# 循环遍历每一行,将每一行的数据以列表形式添加到 rows 列表中
for i, row in enumerate(worksheet.iter_rows(values_only=True), 1):
d = list(row)
if i == 1:
worksheet_w.write_row(i - 1, 0, d)
continue
raw_addres = jionlp.parse_location(d[0])
sheng = raw_addres['province']
shi = raw_addres['city']
qu_xian = raw_addres['county']
print(f'省:{sheng} 市:{shi} 区\县:{qu_xian}')
worksheet_w.write_row(i - 1, 0, [d[0], sheng, shi, qu_xian])
# print(f"行{i}",d)
workbook_w.close()
总结
-
希望对初学者有帮助
-
致力于办公自动化的小小程序员一枚
-
希望能得到大家的【一个免费关注】!感谢
-
求个 🤞 关注 🤞
-
此外还有办公自动化专栏,欢迎大家订阅:Python办公自动化专栏
-
求个 ❤️ 喜欢 ❤️
-
此外还有爬虫专栏,欢迎大家订阅:Python爬虫基础专栏
-
求个 👍 收藏 👍
-
此外还有Python基础专栏,欢迎大家订阅:Python基础学习专栏