如何让gnupg在使用Python的终端中提示输入密码?

如何让gnupg在使用Python的终端中提示输入密码?,python,gnupg,praw,Python,Gnupg,Praw,我试图用Python编写一个Reddit脚本,而不是将密码存储在纯文本中,而是根据我在互联网上找到的一个示例对其进行了加密。我是Python新手,我不太确定如何让pinentry弹出,我的密码也没有存储在我的.gnupg文件夹中 我有这个: import praw from praw.models import Submission import wget import gnupg gpg_home = "/home/jonathan/.gnupg" gpg = gnupg.GPG(gnupg

我试图用Python编写一个Reddit脚本,而不是将密码存储在纯文本中,而是根据我在互联网上找到的一个示例对其进行了加密。我是Python新手,我不太确定如何让pinentry弹出,我的密码也没有存储在我的
.gnupg
文件夹中

我有这个:

import praw
from praw.models import Submission
import wget
import gnupg

gpg_home = "/home/jonathan/.gnupg"
gpg = gnupg.GPG(gnupghome=gpg_home)
gpg.encoding = 'utf-8'

stream = open('info.asc', 'rb')

def getmypasswd(stream,fields):
   stream.seek(0)
   return str(gpg.decrypt_file(stream)).split(",",2)[fields].strip()

reddit = praw.Reddit(client_id=getmypasswd(stream,0), client_secret=getmypasswd(stream,1), password=getmypasswd(stream,2), user_agent='python:Blarg:v1.0 (by Me)', username='BlargMe')
steam.close()
非常感谢您的建议

谢谢大家!

我不知道你是什么意思,但是你在寻找这个模块吗?另外,实际上,与
PASSWORD=input(“PASSWORD:”)
?@grooveplex相比,这样做的优势是什么?也许,我对Python了解不多,也不太想学习。我发现了这种加密方法,并认为它很简洁,但要回答你的问题,它没有优点/缺点。那么为什么不走更简单的路线呢?:)我同意@grooveplex。如果您要在pinentry弹出窗口中手动输入密码(用于GPG密钥),为什么不保存一个步骤并使用
input
getpass
直接在脚本中输入Reddit密码?我不确定您的意思,但您是否在寻找该模块?另外,实际上,与
PASSWORD=input(“PASSWORD:”)
?@grooveplex相比,这样做的好处可能是,我对Python了解不多,也不想学习。我发现了这种加密方法,并认为它很简洁,但要回答你的问题,它没有优点/缺点。那么为什么不走更简单的路线呢?:)我同意@grooveplex。如果要在pinentry弹出窗口中手动输入密码(用于GPG密钥),为什么不保存一个步骤并使用
input
getpass
将Reddit密码直接输入脚本?