gpt4 book ai didi

python - 在Python中设置环境变量

转载 作者:行者123 更新时间:2023-12-01 00:38:42 30 4
gpt4 key购买 nike

长时间的爬行者,第一次来电。我试图创建并使用environ var从settings.py文件发送gmail(smtp),但显然我做错了,因为当我输入密码时它起作用了,但是当我使用os.environ.get隐藏时密码。

我想我没有正确调用环境变量,但我不知道!我收到身份验证错误

import os

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_HOST_USER = '<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="631b1b1b1b4e4e4e4e23040e020a0f4d000c0e" rel="noreferrer noopener nofollow">[email protected]</a>'
EMAIL_HOST_PASSWORD = 'Thisworkedfine'

但是当我使用它时,在我的系统属性中定义“EMAIL_USER”和“EMAIL_PASS”后它不起作用。


EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_HOST_USER = os.environ.get('EMAIL_USER')
EMAIL_HOST_PASSWORD = os.environ.get('EMAIL_PASS')

来自 hell 的错误:

SMTPSenderRefused at /password-reset/
(530, b'5.5.1 Authentication Required. Learn more at\n5.5.1 https://support.google.com/mail/?p=WantAuthError c2sm2597974pjs.13 - gsmtp', 'webmaster@localhost')

哈普!

最佳答案

一种方法是在另一个 python 文件中设置变量并导入该文件。

创建一个文件,例如myEnvVal.py

import os
# Set environment variables
def setVar():
os.environ['EMAIL_USER'] = 'xxxx----@gmail.com'
os.environ['EMAIL_PASSWORD'] = 'Thisworkedfine'

现在导入此文件

import os
import myEnvVal
myEnvVal.setVar()
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_HOST_USER = os.environ.get('EMAIL_USER')
EMAIL_HOST_PASSWORD = os.environ.get('EMAIL_PASS')

关于python - 在Python中设置环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57539884/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com