如何在 PyQt 应用程序中保存用户数据

Posted

技术标签:

【中文标题】如何在 PyQt 应用程序中保存用户数据【英文标题】:How to save user data in a PyQt application 【发布时间】:2017-08-23 05:38:11 【问题描述】:

我正在为 Linux 制作一个应用程序,用户将登录到他的谷歌帐户,然后将在主文件夹中创建一个文件夹,用户将在该文件夹中创建的所有文件将同步到云(谷歌驱动器)。

每当用户连接到互联网时,都会开始同步。因此,为了同步,我需要用户在安装应用程序后填写的用户详细信息。我很困惑,如何存储用户数据。我应该使用数据库还是可以将其存储在文件中?

【问题讨论】:

【参考方案1】:

您可以很容易地将所有登录凭据保存到 .csv 或 .txt 文件中,例如,请参阅 here。

LoginCreds = [pass,login,so on, so forth]
i=0
  for item in LoginCreds:
  if(i == 0):
    i+=1
    open("FILELOCATION",w).write("")#Overwrite any file w/ same name if needed
  open("FILELOCATION","a").write(item)#actually write stuff to the file

然后您可以按必要的顺序从 txt 中提取数据。

话虽如此,但这一切都存在一个重大问题。安全。您必须对这些数据进行编码,否则有人可能会窃取您或其他人的密码。

我建议只保存一些登录所需的信息(例如他们的电子邮件,但不保存密码)。这样就无需对文件进行编码,这将使您的程序更快(无需解密和重新加密密码等),但用户每次都必须登录到应用程序,这还不错.. .

【讨论】:

以上是关于如何在 PyQt 应用程序中保存用户数据的主要内容,如果未能解决你的问题,请参考以下文章

在 PyQt 中,如何将项目和选定项目保存在组合框中

如何重启 PyQt4 应用程序

如何在我的程序中添加 PyQt 菜单栏?

如何使用 PyQt5 保存任何文件?

按下保存按钮pyqt5后关闭第二个小部件

我想在应用程序关闭时保存 PyQt5 设置