小贞贞python关于requests和tkinter模块项目实战

requests模块主要是用于网页的请求,获取相应数据

tkinter模块是python基于GUI的一个模块,大致模块如下:

具体可参照:https://www.cnblogs.com/shwee/p/9427975.html

今天给大家介绍,自制翻译小工具的具体项目实战:

整体是实现方式:

步骤一:通过requets模块请求百度翻译

步骤二:通过tkinter模块制作界面,将界面输入的内容传入requests模块,然后点击“翻译”按钮,显示requests模块返回的数据

步骤三:制作成一个exe的小程序

一、请求百度翻译:建议使用谷歌浏览器,右键的“检查”,反复点击‘翻译’按钮,找到正确翻译的请求的地址,

 查找方式:主要是通过在response中找到请求响应返回的数据

二、通过pip安装requests模块,可直接百度安装方法,打开pycharm,编写代码如下

步骤一:导入模块

 步骤二:创建translate方法,主要用于请求百度翻译,获取翻译结果

 步骤三:实例化一个窗口对象,并进行创建按钮、单行文本框,并进行按钮触发translate方法,将翻译结果返回显示在文本标签中

三、打包成一个exe的可执行程序

步骤一:安装Pyinstaller,命令pip install Pyinstaller

步骤二:打包成exe

cmd进入dos命令,通过cd命令进入该程序文件目录,执行命令:pyinstaller -F -w --icon=xxx.ico xxx.py --noconsole。

其中,-F表示生成单exe可执行文件,-w表示窗体程序,xxx.py是自己创建的python文件名

--icon是设置exe的显示图标,--noconsole 表示不展示cmd窗口,反过来想看cmd窗口就改成--console。*.ico文件可以到网上ico矢量图在线转换工具处理

http://www.faviconico.org/

一阵刷屏之后,终于打出成功的提示:

程序目录下多了几个文件夹:一个spec文件,build文件夹,一个dist文件夹,其中的dist文件夹内就是我们生成的exe应用程序:

该处参考:https://www.cnblogs.com/jackzz/p/9431923.html

 

该处具体代码:

# -*-coding:utf-8 -*-#导入requests模块,主要是用于发送http请求import requests#导入tkinter模块,主要用于实现窗口的设计import tkinter as tk#定义一个方法,将输入输入的strl作为参数传入,请求翻译地址,然后将翻译结果返回def translate():    url = "https://fanyi.baidu.com/v2transapi?from=zh&to=en"    #请求的头部,主要用于模拟浏览器进行请求    headers = {        "User-Agent":"可自行用自己浏览器的user-agent",        "Referer": "https://fanyi.baidu.com/"}    #将用户输入的内容传入我们的请求参数中    trans_text = trans_1.get()    strl = trans_text    print(trans_text)    data = {"query": strl,            "from": "zh",            "to": "en"}    #发送post请求,将其响应的内容转为json格式    response = requests.post(url,headers=headers,data=data).json()    #返回的json串中获取翻译的结果    response_last = response[‘trans_result‘][‘data‘][0][‘dst‘]    #后续GUI界面中写入翻译后的结果    my_lable2["text"]=response_last

#实例化一个窗口对象window = tk.Tk()#给窗口的可视化去名字window.title(‘翻译窗口‘)#设定窗口的大小(长与宽)window.geometry(‘500x300‘)#设置窗口是否可变长、宽,True:可变,False:不可变window.resizable(width=False, height=True)#在图形界面上设定标签,设定标签内容,字体、字体大小颜色及标签宽高my_lable = tk.Label(window,text=‘我的英文翻译器‘,fg=‘blue‘,font=(‘Arial‘,20,‘bold‘),width=30,height=2)#放置标签,自动调节尺寸,有pack()和place()方法my_lable.pack()#用于占一行空白,保持间距my_lable4 = tk.Label(window, height=1)my_lable4.pack()#输入框,明文显示,show=‘*‘则表示密文显示trans_1 = tk.Entry(window,show=None,font=(‘Arial‘,14))trans_1.pack()#用于占一行空白,保持间距my_lable3 = tk.Label(window, height=1)my_lable3.pack()#创建翻译按钮,调用translate方法trans_btn = tk.Button(window,text=‘翻译‘,bg=‘orange‘,font=(‘Arial‘,12,‘bold‘),width=15,height=2,command=translate)trans_btn.pack()my_lable1 = tk.Label(window, text=‘翻译结果如下:‘,fg=‘green‘, font=(‘Arial‘, 12), width=30, height=2)my_lable1.pack()#该标签用于显示翻译后的结果,在translate方法中有调用它的text属性,将翻译结果显示my_lable2 = tk.Label(window, fg=‘green‘,font=(‘Arial‘, 12), width=30, height=2)my_lable2.pack()#窗体循环,会让window不断的刷新,相关于一个while循环,每点击一次就会更新一次window.mainloop()

备注:该代码没有做输入的格式等进行容错处理,大家可进行改进

原文地址:https://www.cnblogs.com/xiaozhenzhen/p/11760797.html

时间: 2024-11-09 07:44:21

小贞贞python关于requests和tkinter模块项目实战的相关文章

爬虫小试--用python中requests和urllib模块爬取图片

今天突发奇想小试爬虫,获取一下某素材站一些图片 实现步骤如下: import re import requests from urllib import request import os # 1.首先要检查数据是否是动态加载出来的 # 2.获取页面源码数据 if not os.path.exists('tupian'): os.mkdir('tupian') headers = { "User-Agent" : "Mozilla/5.0 (Macintosh; Intel

零基础学习Python web开发、Python爬虫、Python数据分析,从基础到项目实战!

随着大数据和人工智能的发展,目前Python语言的上升趋势比较明显,而且由于Python语言简单易学,所以不少初学者往往也会选择Python作为入门语言. Python语言目前是IT行业内应用最为广泛的编程语言之一,尤其是近几年来随着大数据和人工智能(机器学习.自然语言处理.计算机视觉等)的发展,Python也得到了越来越广泛的应用,另外Python在Web开发.后端开发和嵌入式开发领域也有广泛的应用. 小编推荐一个学Python的学习裙,九三七六六七 五零九,无论你是大牛还是小白,是想转行还是

小贞贞的博客开通啦

大家好,我是小贞贞 虽然年纪一把,但是还是厚脸皮了叫了自己“小贞贞” 在我老母亲的生日之际,我开通了个人的博客,希望未来能与大家一起分享和探讨一些关于测试相关的技能 打算分享一些关于自己学习到的基于python的网络爬虫.web自动化.app自动化相关的技能,还包括jmeter.fiddler.postman等工具的使用技巧等 原文地址:https://www.cnblogs.com/xiaozhenzhen/p/11684715.html

python中的Tkinter模块

Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口.Tk和Tkinter可以在大多数的Unix平台下使用,同样可以应用在Windows和Macintosh系统里.Tk8.0的后续版本可以实现本地窗口风格,并良好地运行在绝大多数平台中. 目录: 1.简单实例2.Label控件3.Button控件4.Entry控件5.点击按钮输出输入框中的内容6.Text控件7.带滚动条的Text8.Checkbutton多选框控件9.Radiobutton单选框10.Lis

python,基于tkinter模块编写的根据经纬度计算两点间距离的应用程序

python的tkinter模块是用于编写GUI窗口程序的模块,使用起来非常方便,功能强大.基于tkinter模块,开发了一个输入两点经纬度计算输出距离(包括公里数和孤度数)的小程序,主要应用于地震台站地震报告编写.下面这段代码可以在python3.8上直接运行. import tkinter as tk import tkinter.messagebox from math import radians, cos, sin, asin, sqrt #定义由输入文本框获得台站及震源经纬度,计算距

python之requests模块

Python标准库中提供了:urllib等模块以供Http请求,但是,它的 API 太渣了.它是为另一个时代.另一个互联网所创建的.它需要巨量的工作,甚至包括各种方法覆盖,来完成最简单的任务. 发送GET请求 import urllib.request f = urllib.request.urlopen('http://www.webxml.com.cn//webservices/qqOnlineWebService.asmx/qqCheckOnline?qqCode=424662508')

Python之Tkinter模块学习

本文转载自:http://www.cnblogs.com/kaituorensheng/p/3287652.html Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口 作为实践, 用Tkinter做了个ascii码转化查询表,本文从四点介绍 产品介绍 设计规划 相关知识 源码附件 1. 产品介绍 界面 功能 通过输入字符或数字查询对应的信息 通过选择列表中的信息查询对应的信息 2. 设计规划 规划图 3. 相关知识 首先看怎么产生第一个窗口 from T

Linux升级Python提示Tkinter模块找不到解决

一.安装tkinter 在Linux中python默认是不安装Tkinter模块, [[email protected]193 ~]# python Python 2.6.6 (r266:84292, Feb 22 2013, 00:00:18) [GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2 Type "help", "copyright", "credits" or "license

49.Python使用requests包进行HTTP交互方法详解

简介 使用方法 传递QUERY参数 定制请求头 填写cookie 填充请求体 处理响应对象 重定向与访问历史 超时 Session对象 根据响应获取请求 SSL认证 HTTP认证 基本认证 摘要认证 代理场景 HTTPHTTPS代理 SOCKS代理 简介 Python的HTTP包有urllib.urllib2.httplib等,但是都需要了解较多的HTTP原理才能编码,借助requests包可以在较高的抽象层次上完成HTTP交互过程的开发.安装requests使用pip install requ