本文分享的代码主要是通过Python+tkinter模拟“记住我”自动登录的功能,具体介绍如下。

基本思路:如果某次登录成功,则创建临时文件记录有关信息,每次启动程序时尝试自动获取上次登录成功的信息并自动编写。本文主要演示思路,可根据实际系统中的需要进行改写,例如读取数据库并验证用户名和密码是否正确、对用户名和密码进行本地加密存储等等。

import tkinter

import tkinter.messagebox

import os

import os.path

# 获取Windows平台临时文件夹

path = os.getenv('temp')

filename = os.path.join(path, 'info.txt')

# 创建应用程序窗口

root = tkinter.Tk()

# 在窗口上创建标签组件

labelName = tkinter.Label(root,text='User Name:',justify=tkinter.RIGHT,width=80)

labelName.place(x=10, y=5, width=80, height=20)

# 创建字符串变量和文本框组件,同时设置关联的变量

varName = tkinter.StringVar(root, value='')

entryName = tkinter.Entry(root,width=80,textvariable=varName)

entryName.place(x=100, y=5, width=80, height=20)

labelPwd = tkinter.Label(root,text='User Pwd:',justify=tkinter.RIGHT,width=80)

labelPwd.place(x=10, y=30, width=80, height=20)

# 创建密码文本框

varPwd = tkinter.StringVar(root, value='')

entryPwd = tkinter.Entry(root,show='*',width=80,textvariable=varPwd)

entryPwd.place(x=100, y=30, width=80, height=20)

# 尝试自动填写用户名和密码

try:

with open(filename) as fp:

n, p = fp.read().strip().split(',')

varName.set(n)

varPwd.set(p)

except:

pass

# 登录按钮事件处理函数

def login():

# 获取用户名和密码

name = entryName.get()

pwd = entryPwd.get()

if name=='admin'and pwd=='123456':

tkinter.messagebox.showinfo(title='恭喜',message='登录成功!')

# 把登录成功的信息写入临时文件

with open(filename, 'w') as fp:

fp.write(','.join((name,pwd)))

else:

tkinter.messagebox.showerror('警告',message='用户名或密码错误')

# 创建按钮组件,同时设置按钮事件处理函数

buttonOk = tkinter.Button(root,

text='Login',

command=login)

buttonOk.place(x=30, y=70, width=50, height=20)

# 取消按钮的事件处理函数

def cancel():

#清空用户输入的用户名和密码

varName.set('')

varPwd.set('')

buttonCancel = tkinter.Button(root,

text='Cancel',command=cancel)

buttonCancel.place(x=90, y=70, width=50, height=20)

#启动消息循环

root.mainloop()

演示结果:

总结

以上就是本文关于Python+tkinter模拟“记住我”自动登录实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

python 自动打开登陆应用编码_Python+tkinter模拟“记住我”自动登录实例代码相关推荐

  1. python 自动打开登陆应用编码_python百度自动登录代码

    from selenium import webdriver import time baiduuser = input('百度账号:') baidupassword = input('百度账号密码: ...

  2. python输出奇数数字序位_python对输出的奇数偶数排序实例代码

    我们从小学的时候就学习了奇数偶数,知道整数可以分成奇数和偶数两大类,能被2整除的数叫做偶数,不能被2整除的数叫做奇数.在我们python编程中,会遇到很多数字和代码,有的时候会很乱,不好操作. 在遇到 ...

  3. python监控文件或目录大小_python监控文件或目录的变化(实例代码)

    本节主要内容: python监控一个文件或目录的变化,如果有变化,把文件上传备份至备份主机,并且还要监控上传过程是否有问题等. 根据此需求,编写如下脚本实现这个功能: 代码示例: #!/usr/bin ...

  4. python打开网址搜索关键字_Python实验:百度搜索关键字自动打开相关URL

    #! python # coding: utf-8 # python实现百度搜索关键字,并依次用浏览器打开前五个搜索结果 ## ##Beautiful Soup 是一个模块,用于从HTML 页面中提取 ...

  5. python已打开页面获取信息_python+selenium实现自动登录网页获取信息(一)

    我用的是一个教师继续教育的网站,进行演示和模拟,网站:http://cas.study.yanxiu.jsyxsq.com/auth/login?service=http%3A%2F%2Fwww.17 ...

  6. python 提示框如何顶层显示_python tkinter之顶层菜单、弹出菜单实例

    我就废话不多说了,直接看代码吧! from tkinter import * def sys_callbak(): pass def fun_callbak(): pass def no_thing( ...

  7. python中对字符串进行编码_Python 中的字符串编码

    对Python字符编码一直没搞明白,今天看<Python参考手册>再次遇到这个问题,重新整理下 Python中字符串字面量用于指定一个字符序列,其定义方法是把文本放入单引号('),双引号( ...

  8. python实现翻_python实现模拟按键,自动翻页看u17漫画

    python实现模拟按键,自动翻页看u17漫画 发布于 2015-10-22 08:23:25 | 134 次阅读 | 评论: 0 | 来源: 网友投递 Python编程语言Python 是一种面向对 ...

  9. python模拟登陆遇到重定向_python - scrapy模拟登陆知乎出现重定向无法登陆问题

    当我使用scrapy想进行模拟登陆, 然后抓取首页的问题和答案时, 一直显示重定向问题 pythonfrom scrapy.contrib.spiders import CrawlSpider, Ru ...

  10. python的打开方式有哪些_python中打开程序的方式有哪些

    python中打开程序的方式有哪些 发布时间:2020-08-10 11:58:08 来源:亿速云 阅读:64 作者:小新 这篇文章将为大家详细讲解有关python中打开程序的方式有哪些,小编觉得挺实 ...

最新文章

  1. 2:0!谷歌 AI “AlphaStar“ 虐杀职业星际玩家
  2. 发布一个嘿嘿嘿的技术方案 —— 商用群发p2p网络
  3. Windows与Linux共享文件夹互相访问
  4. python单例_python 单例模式
  5. 计算机接口技术试题及答案,2014.3计算机接口技术总复习题及答案
  6. 30道经典SQL面试题讲解(1-10)
  7. Marketing Cloud里CSRF token的获取时机
  8. 11.消息摘要算法之MD5
  9. 信号与系统研讨(二)归一化正交函数在匹配滤波器中的应用
  10. iOS13:UISceneDelegate
  11. SQL Server 导入Excel数据
  12. ca证书申请流程有哪些?
  13. GPU图形加速型云服务器是什么?
  14. 小众绿软|媒体:myPlayer 2.1
  15. R语言绘制花瓣图flower plot
  16. 卫星影像,区划矢量,DEM....教你如何将各种遥感数据收入囊中
  17. plink遗传数据质控--每个个体QC、每个marker(变异)质控、全基因组关联meta分析QC
  18. teamviewer检测为商业用途 5分钟后关闭解决方法
  19. (无美国卡)如何进行美国号码是否可正常接收短信的验证,解决方案详见内文...
  20. uniapp页面导出pdf

热门文章

  1. Word2010与MathType6.7兼容性问题解决方案
  2. C#操作XML的完整例子——XmlDocument篇(转载,仅做学习之用)
  3. 查看oracle数据库服务器的名字
  4. redis源码编译和调试
  5. java 对excel指定单元格的数据修改后并输出到指定文件夹
  6. C#的set 和 get 方法
  7. DB2 在创建数据库的时候,后面不能加“;”分号
  8. java web 前端学习路线
  9. zabbix3.4 监控mysql 数据库连接数
  10. 正则、grep与egrep工具