码迷,mamicode.com
首页 > 编程语言 > 详细

Python-根据已有的行政区域信息,自动生成exl文件

时间:2018-01-03 22:47:10      阅读:324      评论:0      收藏:0      [点我收藏+]

标签:ide   span   生成   one   window   pack   text   png   nis   

最近接到个小任务,需要从下图这样的信息中找出社区、行政村并且分类。事后我计算了一下,只是行政村就有500+,这样的重复性劳动果断选择Python来执行。

技术分享图片

为了方便其他和我遇到同样问题的人,我用pyinstaller将这个程序打包了。根据以往经验,在win7 32位电脑上是可以运行的。

使用起来需要注意的就是需要有像上图【name.txt】一样的文件才行。

本来打算用爬虫爬去zf的网站信息的,无奈这几个网站风格都不一样,况且复制起来也挺方便,就没用爬虫。

原理就是利用了正则表达式,匹配了“社区”,“村”字符。可能还有“居委会”等字符我没考虑到,因此将代码贴在下面。

工具截图:

技术分享图片

 

程序微云链接:下载  (密码:unbR)

技术分享图片
 1 # -*- coding: utf-8 -*-
 2 """
 3 Created on Thu Dec 28 11:18:39 2017
 4 
 5 @author: Administrator
 6 """
 7 
 8 import re
 9 import xlwt
10 import tkinter as tk
11 from PIL import Image,ImageTk
12 
13 def _getexl():
14     try:
15         f = open(‘D://name.txt‘,‘r‘)
16         data = f.read()
17     except Exception as e:
18         var2.set(‘未找到D://name.txt!‘)
19         window.update()
20     #print (data)
21     workbook = xlwt.Workbook(encoding = ‘ascii‘) #创建exl工作本
22     worksheet = workbook.add_sheet(‘My Worksheet‘)
23     m = 1
24     n = 1
25     for a in set(re.findall(‘(.+?社区).+?‘, str(data))):
26         worksheet.write(m, 0, a) 
27         m += 1
28     for b in set(re.findall(‘(.+?村).+?‘, str(data))):
29         worksheet.write(n, 1, b) 
30         n += 1
31     workbook.save(‘D://行政划分.xls‘)
32     var2.set(‘已经生成 D://行政划分.xls‘ )
33     window.update()
34     #print (‘写入完成!‘)
35     
36 window = tk.Tk()    #图形化窗口
37 window.title(‘行政区域信息表生成工具 v1.0‘)
38 window.geometry(‘350x300‘)
39 
40 B1 = tk.Button(window,text = ‘开始生成‘,41                command=_getexl,width=15,height=2)
42 B1.pack()
43 
44 var2 = tk.StringVar()    #tk字符串变量?
45 l2 = tk.Label(window,textvariable=var2,bg=‘green‘,46               fg=‘white‘,width=40,height=2)
47 l2.pack()
48 
49 l1 = tk.Label(window,text = ‘【使用须知】\n ①准备工作:在D盘根目录添加“name.txt”,50               将型如【xx社区,xx村,xx社区,xx村】的行政划分信息写入其中。51               ②点击“开始生成”按钮,(支持“社区”“村”)‘,bg=‘gray‘,width=40,fg=‘white‘,wraplength=270)
52 l1.pack()
53 
54 load = Image.open(‘hndx-min.png‘)
55 png = ImageTk.PhotoImage(load)
56 l3 = tk.Label(window,image = png)
57 l3.image = png
58 l3.pack()
59 
60 window.mainloop()
View Code

 

Python-根据已有的行政区域信息,自动生成exl文件

标签:ide   span   生成   one   window   pack   text   png   nis   

原文地址:https://www.cnblogs.com/aubucuo/p/8185627.html

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!