本地密码管理工具——python
Acl0
- 关注
1. 数据库初始化
def setup_db():
conn = sqlite3.connect("passwords.db")
cursor = conn.cursor()
cursor.execute('''CREATE TABLE IF NOT EXISTS passwords (
id INTEGER PRIMARY KEY,
name TEXT,
url TEXT,
username TEXT,
password TEXT)''')
conn.commit()
conn.close()
分析:
连接 SQLite 数据库
passwords.db
,如果不存在则创建。创建
passwords
表,包含id
(主键)、name
(名称)、url
(网址)、username
(用户名)、password
(密码)。commit()
保存更改,最后关闭数据库连接。
2. 增加密码记录
def add_entry():
name, url, username, password = name_var.get(), url_var.get(), user_var.get(), pass_var.get()
if not name or not url or not username or not password:
messagebox.showwarning("警告", "所有字段都是必填的!")
return
conn = sqlite3.connect("passwords.db")
cursor = conn.cursor()
cursor.execute("INSERT INTO passwords (name, url, username, password) VALUES (?, ?, ?, ?)",
(name, url, username, password))
conn.commit()
conn.close()
load_entries()
clear_fields()
分析:
获取用户输入的
name
、url
、username
和password
。如果任何字段为空,则弹出警告。
连接数据库,并使用
INSERT INTO
语句将数据存入数据库。调用
load_entries()
重新加载数据到 UI。clear_fields()
清空输入框。
3. 删除密码记录
def delete_entry():
selected_item = tree.selection()
if not selected_item:
messagebox.showwarning("警告", "请先选择一条记录!")
return
item_id = tree.item(selected_item)['values'][0]
conn = sqlite3.
可试读前30%内容
¥ 9.9 全文查看
9.9元开通FVIP会员
畅读付费文章
畅读付费文章
最低0.3元/天
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 Acl0 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏

相关推荐
ShellCode加载器 | 基于Go语言的shellcode加载器常见实现方式详解
2025-04-03
web安全 | 敏感信息泄露检测与防护技术详解
2025-04-02
WAF绕过 | SQL注入方法详解
2025-04-01