赞
踩
项目
Python + Eel + Sqlite 实现个人密码管理器
配置环境
安装eel (windows平台)
pip install eel
项目目录结构
│ main.py // 主运行文件
│ sercet.db // 数据库文件
│ sqlfile.py // 数据库操作文件
│ //
└─web // web文件目录,所有web资源放到这个目录
index.html // 显示界面
部分代码分析
把SQL语句放入sql字典中,方便多次使用
sql = {
'ct': 'CREATE TABLE SERCET'
'(ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,'
'PLACE CHAR(50),'
'ACCOUNT CHAR(50),'
'PASSWORD CHAR(50),'
'NOTE TEXT);',
'in': 'INSERT INTO SERCET'
'(PLACE,ACCOUNT,PASSWORD)'
'VALUES',
'se': 'SELECT * FROM SERCET',
'up': 'UPDATE SERCET'
'SET',
'sc': 'select * from sqlite_master where type="table"'
}
运行sql语句
def runsql(state):
# 连接数据库文件,如果不存在,自动创建
conn = sqlite3.connect('sercet.db')
c = conn.cursor()
# 运行sql语句,并得到sqlite.cousor对象
cursor = c.execute(state)
# 读取cursor中的内容
for i in cursor:
print(i)
conn.commit()
# 关闭连接
conn.close()
return cursor
pass
思路
Python 完成对数据库的各种操作。
eel使得js可以调用Python函数获取数据库数据,然后将数据显示在网页上。
运行方法
运行 main.py 文件
python main.py
或
py main.py
在浏览器中打开 index.html文件
总结
目前可以将所有数据显示在网页上。
后续还可以添加其他功能,比如,增删改查。
完整代码
开发概述
自己的各种账号越来越多,必须把它们记下来,最开始是用的记事本,但我觉得不够,就打算开发这样一个密码管理应用。
html + css + js 开发更快,界面能够快速设计,并且能够快速实现交互功能。这种模式能使应用体积更小,应用的更快,毕竟现在大家一般都有浏览器。
eel 可以调用Python代码,这样就可以操作sqlite数据库,js在数据库方面的支持并不友好,我最开始就想用js来操作sqlite数据库,但是遇到了阻碍,转而利用Django框架开发小型web项目,但Django框架对我来说比较复杂,最后选择了eel + Python的简单模式,该模式还是有不足之处,但已经能够实现当初设想的功能。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。