这里应用到的有正则表达式。qq号的正则表达式的“[1-9][0-9]{4,10}”。用户界面用到了tkinter,不难理解。
其基本思路是:
1.用户界面启动,显示要处理的信息。
2.点击按钮“提取”,把qq邮箱显示到列表框中。
3.点击保存,则保存到“files”文件夹的“QQMail.txt”中。
代码如下:
import tkinter as tkr
import re
QQstr="""
群成员人数: 12/500 添加成员 设置管理员 删除成员
搜索关键词
更多筛选
成员 群名片 QQ号 性别
Q龄
入群时间
最后发言
1
暖阳
杨某某
785844930 男 10年 2012年5月以前 2016/04/29
2
绿野
孟某某
453984879 未知 13年 2012年5月以前 2016/04/29
3
小孤山
王某某
592124209 男 10年 2012年5月以前 2015/03/05
4
曹小军
曹某某
893107577 女 8年 2012年5月以前 2016/04/18
5
小蚂蚁
关某某
1486337721 女 7年 2012年5月以前 2012/04/06
6
妍化山石
段某某
1654784261 女 7年 2012年5月以前 2016/04/17
7
云淡风轻
孙某某
1327227541 女 6年 2013/03/17 2016/04/17
8
孙叶子
孙某霞
84007476 女 17年 2013/03/17 2016/04/17
9
桃李不言
王某伟
529530247 男 13年 2013/03/17 2015/07/16
10
咕噜熊
谢某某
29363055 男 17年 2016/04/17 2016/04/17
11
峰
齐某某
27931865 男 17年 2016/04/17 2016/04/17
12
明月
关某某
304919428 女 14年 2016/04/17 2016/04/17
友情链接:QQ官方网站 | 腾讯开放平台 | 在线教育介绍 | QQ商家 | QQ会员 | 腾讯文档
"""
###全局变量
baklist=[]
###提取QQ号,加上邮箱号,插入列表
def extract():
global baklist #引用全局变量
mylist=re.findall(r"[1-9][0-9]{4,10}",text.get("0.0","end"))
print("提取到的QQ号是:")
print(mylist)
for qq in mylist:
qq+="@qq.com"
list.insert(tkr.END,qq)
baklist.append(qq)
###保存提取的信息到files文件夹
def save():
file=open(r"files\qqmail.txt","wb")
if baklist!=None:
for qq in baklist:
file.write((qq+"\r\n").encode("utf-8"))
file.close()
win=tkr.Tk()
button=tkr.Button(win,text="提取",command=extract)
button.pack()
buttonSave=tkr.Button(win,text="保存",command=save)
buttonSave.pack()
text=tkr.Text(win)
text.insert(tkr.INSERT,QQstr)
text.pack()
list=tkr.Listbox(win)
list.pack()
win.mainloop()
运行结果是:
记事本