- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
在 Windows 7 上运行并使用 PyCharm 2016.2.3(如果有的话)。
无论如何,我正在尝试编写一个向收件人发送电子邮件的程序,但我希望控制台提示输入密码才能登录。
听说getpass.getpass()
可以用来隐藏输入。
这是我的代码:
import smtplib
import getpass
import sys
print('Starting...')
SERVER = "localhost"
FROM = "my@email.com"
while True:
password = getpass.getpass()
try:
smtpObj = smtplib.SMTP(SERVER)
smtpObj.login(FROM, password)
break
except smtplib.SMTPAuthenticationError:
print("Wrong Username/Password.")
except ConnectionRefusedError:
print("Connection refused.")
sys.exit()
TO = ["your@email.com"]
SUBJECT = "Hello!"
TEXT = "msg text"
message = """\
From: %s
To: %s
Subject: %s
%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT)
smtpObj.sendmail(FROM, TO, message)
smtpObj.close()
print("Successfully sent email")
但是当我运行我的代码时,输出如下:
Starting...
/Nothing else appears/
我知道 getpass()
的默认提示是 'Password:'
但即使我向它传递提示字符串,我也会得到相同的结果。
有什么建议吗?
编辑:代码在打印字符串后继续无限期运行,但没有出现任何其他内容,也没有发送电子邮件。
最佳答案
关于python - Python 中的 getpass.getpass() 函数不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40007802/
import getpass password=getpass.getpass(prompt="Password: ") print(password) 这个非常简单的代码显示错误: Warni
我是 Python 的新手,但我已经搜索过这方面的答案。我的代码是: import urllib, http import gspread import datetime import getpass
在 Windows 7 上运行并使用 PyCharm 2016.2.3(如果有必要的话)。 无论如何,我正在尝试编写一个向收件人发送电子邮件的程序,但我希望控制台提示输入密码才能登录。 我听说getp
已关闭。这个问题是 not reproducible or was caused by typos 。目前不接受答案。 这个问题是由拼写错误或无法再重现的问题引起的。虽然类似的问题可能是 on-top
在 Windows 7 上运行并使用 PyCharm 2016.2.3(如果有的话)。 无论如何,我正在尝试编写一个向收件人发送电子邮件的程序,但我希望控制台提示输入密码才能登录。 听说getpass
我试图得到一个提示,询问我的密码,但是当我尝试调用getpass.getpass()时,它只是卡住了。我在Canopy上使用Python 2.7在Windows 7 64位上运行。 import sy
我在 os x 上编写了一个脚本,导入 getpass 并要求输入密码: a = getpass.getpass("Password: ") 但是当我在 Linux 中运行相同的代码时: python
我发现 getpass 在 PyCharm 中不起作用。它只是挂起。 事实上似乎 msvcrt.getch 和 raw_input 也不起作用,所以问题可能不在于 getpass。取而代之的是 PyC
我想在没有回显的情况下在 Windows 的 IDLE 终端中输入密码。 通常使用 python 使用函数 getpass.getpass() 可以输入密码,但在 IDLE 中会出现以下警告消息: G
以下结构脚本是开源的,我需要使用它,不幸的是我不熟悉这些东西。结构文件以: from fabric.api import * import time env.user = 'aegir' env.sh
我正在尝试 getpass(),我想我应该尝试一下: char *key1 = getpass("K: "); char *key2 = getpass("K: "); if(key1 == key2
今天我正在编写一些代码,在某个时候我需要 getpass 函数,一切都很好,至少在我使用 --std=c11 之前我得到了: error: implicit declaration of functi
所以我不知道我是否遗漏了一些文档,但我有两个关于 getpass 的问题。 我好像没法保存密码 之后回显密码 >>> pass = getpass.getpass() File "", line
我正在寻找一个实例示例,我们导入 Python getpass 库,输入我们的密码,但密码没有回显到终端。 这是一个将密码回显到终端的示例: $ python >>> import getpass >
假设我有以下短程序,我将其称为Parent.c。 #include #include #include int main(){ char buffer[100]; memset(
这个问题在这里已经有了答案: "GetPassWarning: Can not control echo on the terminal" when running from IDLE (4 个答案
我正在尝试制作一个由多个模块组成的脚本,这些脚本需要 su/sudo,但我不想让用户每次都输入他们的密码,我只想询问一次并完成它。 (我也不想以明文形式存储密码,因为它旨在用于具有不同用户/密码的不同
我一直在寻找一个 getpass() 替代方法,它实际上是我创建的隐藏密码输入的最简单方法。对于 C++ 来说,这是一种损失,因为它是一种如此简单的函数,却有很多用途。 我想知道的是为什么它被认为已过
我正在编写一个 python 脚本来运行一些命令。其中一些命令要求用户输入密码,我确实尝试在他们的标准输入中输入数据,但它不起作用,这里有两个简单的 python 程序代表问题 输入.py impor
大家好,刚刚开始涉足一个小 Python 来帮助处理一些工作中的脚本,但我似乎被一个小问题所困扰。 我在我的开发平台上使用 Eclipse 和 pydev,并针对 python 2.7.3 进行开发。
我是一名优秀的程序员,十分优秀!