文章目录
导入相关的包txt 版本Excel版本创建结果保存文件txt版本Excel版本循环提取数据并保存txt版本Excel版本完整代码及附件见本人主页资源本文通过python的phone依赖包,实现查询手机号所附带的信息,并输出到Excel或者TXT中的功能。
TXT版本为本人测试版本,比较粗糙,Excel包含了纠错功能,面向用户友好。
所有代码均在python3.10
下完美运行。
导入相关的包
txt 版本
import phone
Excel版本
import phoneimport xlsxwriter as xwfrom openpyxl import load_workbook
创建结果保存文件
txt版本
file = open(r".\查询结果.txt", 'w')# change!# 打开要查询的号段文档f = open(r".\查询号段.txt")file.write('手机号,所属省份,所属市区,邮编,电话区号,运营商')file.write('\n')
Excel版本
workbook_insert = xw.Workbook('查询结果.xlsx') # 创建工作簿worksheet1 = workbook_insert.add_worksheet("号段查询结果") # 创建子表worksheet1.activate() # 激活表title = ['手机号', '所属省份', '所属市区','邮编','电话区号','运营商'] # 设置表头worksheet1.write_row('A1', title) # 从A1单元格开始写入表头
循环提取数据并保存
txt版本
list_info = ['phone','province','city','zip_code','area_code','phone_type']while True:# 按行读取文档phoneNum = f.readline()# 如果读取完了就退出if not phoneNum:print("all done!")breakelse:info = phone.Phone().find(int(phoneNum)) #核心代码for list in list_info:file.write(info[list])file.write('\n')print(phoneNum,'have done')f.close()file.close()print(info)f.close()file.close()
Excel版本
j = 2 # 从第二行开始读取写入数据while True:# 按行读取文档phoneNum = sheet_raw.cell(row=j, column=1).valueif not phoneNum:print("全部查询完毕!")breakelif isinstance(phoneNum,int) and len(str(phoneNum))==11: #判断是否是11位纯数字号码try:info = phone.Phone().find(int(phoneNum)) #核心代码insertData = [info['phone'], info['province'],info['city'], info['zip_code'],info['area_code'], info['phone_type']]row = 'A' + str(j)worksheet1.write_row(row, insertData)print(phoneNum, ' 已查询完毕!')except:insertData = [phoneNum, '该号码无法查询']row = 'A' + str(j)worksheet1.write_row(row, insertData)print(phoneNum,'该号码无法查询')else:insertData = [phoneNum,'不是手机号码,请检查']row = 'A' + str(j)worksheet1.write_row(row, insertData)print('第',j,'行信息不是手机号码,请检查')# 如果读取完了就退出j += 1workbook_raw.close()workbook_insert.close() # 关闭表
完整代码及附件见本人主页资源
手机归属地查询-Excel及txt两版本.ziplongjs的主页
【python实战】通过手机号查询所属省份 市区 邮编 电话区号 运营商等信息 提供Excel和txt两版本
如果觉得《【python实战】通过手机号查询所属省份 市区 邮编 电话区号 运营商等信息 提供Ex》对你有帮助,请点赞、收藏,并留下你的观点哦!