Python 收货地址自动识别(使用接口)

Python 收货地址自动识别(使用接口),第1张

概述#准备工具,http://www.flagyun.com/developer.html#queryaddress注册并获取接口appkeyimporttkinterastkimportjsonimportrequestsimporturllibimportctypes#隐藏控制台窗口whnd=ctypes.windll.kernel32.GetConsoleWindow()ifwhnd!=0:ctypes.windll.u
#准备工具,http://www.flagyun.com/developer.HTML#queryaddress 注册并获取接口appkey


import tkinter as tkimport Jsonimport requestsimport urllibimport ctypes#隐藏控制台窗口whnd = ctypes.windll.kernel32.GetConsoleWindow()if whnd != 0: ctypes.windll.user32.ShowWindow(whnd, 0) ctypes.windll.kernel32.CloseHandle(whnd)#处理接口请求并返回指定参数def run( Text): url = 'https://open.flagyun.com/queryaddress.ashx' #heads = {'Content-type': 'application/x-www-form-urlencoded'} # 封装传入的参数 m_post_data = {} m_post_data['appkey'] = '替换注册的appkey' #这里的key使用提供注册的的appkey!!!! m_post_data['address'] = urllib.parse.quote(Text) #使用汉字编码 url = url + '?' + 'appkey=这里输入appkey&address=' + m_post_data['address'] #请求的参数进行拼接 这里需要更换appkey在进行拼接!!!! data= '' uuu = requests.post(url,data) #请求数据并返回 d = Json.loads(uuu.text) re_request = d['resultList'] if len(re_request) == 0 : #messageBox.showinfo(Title='提示', message='参数address过短,无需解析!') return 'none' else: f = d['resultList'] g = f[0]['province'] h = f[0]['city'] i = f[0]['area'] j = f[0]['details'] k = f[0]['name'] l = f[0]['mobile'] strcat = g+'\t' + h +'\t' + i +'\t' + j + '\t' + k + '\t' + l + '\n' return strcat# 处理後的数据写入电子表格中def Write_file(Text): infile = open('Data.xls', 'a+') infile.write(Text) infile.close()def not_auto_run(): str = m_Show_Text.get() Write_file(str)# 将未处理的数据存入缓冲区def Read_file(): outfile = open('config.txt', 'r') StrList = {} for line in outfile.readlines(): StrList[line] = line else: #messageBox.showinfo(Title='提示', message='数据处理完毕!') return StrList#配置文件读取,自动处理def auto_run(): List = Read_file() for index in List: str = run(index) if str== 'none': #判断是否有数据为空,否则不予处理! continue else: Write_file(str)#界面展示top = tk.Tk()top.geometry('800x600')m_input_Edit= tk.Entry(top, wIDth = 100, fg='red')m_input_Edit.pack()m_Show_Text=tk.Entry(top,wIDth = 100)m_Show_Text.pack()#处理数据def get(): str = m_input_Edit.get() #获取地址 tospringlite = run(str) m_Show_Text.delete(0, 1024) m_Show_Text.insert(0, tospringlite) m_input_Edit.delete(0, 1024)B = tk.button(top, text ="数据处理",command = get)B.pack()run_button = tk.button(top, text ="手动处理,将处理後的文件放入指定文件中",command = not_auto_run)run_button.pack()#自动处理按钮autorun_button = tk.button(top, text ="数据自动处理",command = auto_run)autorun_button.pack()top.mainloop()

  

总结

以上是内存溢出为你收集整理的Python 收货地址自动识别(使用接口)全部内容,希望文章能够帮你解决Python 收货地址自动识别(使用接口)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1185389.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存