使用 Python SMPT 和 Gmail 发送电子邮件很简单!
向其他人发送电子邮件是一件很重要的事情,在开发中它可以用来发送一些代码,如 OTP、PIN、身份验证等
最近,我有一个项目,需要我能够向用户发送电子邮件以获取 OTP 代码,结果非常简单。
这是我所做的基本步骤:
首先,您需要通过允许两步验证设置您的Google帐户,以便能够用于发送电子邮件(如果完成,请跳过此步骤)。
- 打开您的 Google 帐户。
- 在导航面板中,选择安全。
- 在“您如何登录 Google”下,选择两步验证,然后开始。
- 按照屏幕上的步骤操作。 开启两步验证
其次,创建一个应用程序密码(16 位密码,允许安全性较低的应用程序或设备访问您的 Google 帐户)。
- 确保允许两步验证。
- 打开创建和管理您的应用程序密码。
- 添加应用程序的名称(无论你喜欢什么),生成的密码将如下所示:
- 保存密码(稍后会用到),不要分享给任何人哦。
最后,这是 python 中用于发送电子邮件的基本代码:
import smtplib from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText # creates SMTP session s = smtplib.SMTP('smtp.gmail.com', 587) # start TLS for security s.starttls() # Authentication s.login("your_email@gmail.com", "yyaz pgow khtd xeqn") # Create a multipart message msg = MIMEMultipart() msg['From'] = "your_email@gmail.com" msg['To'] = "send_to_email@gmail.com" msg['Subject'] = "Subject of the Email" message = "How are you mate? This is a test email sent using Python" # Attach the message body msg.attach(MIMEText(message, 'plain')) # Send the email s.send_message(msg) # terminating the session s.quit()
- 使用已设置的Google帐户(两步验证)和使用您的电子邮件和已生成的应用程序密码作为参数s.login() 就像上面的代码。
- 运行它,这是一个有效的示例:
如果您遇到任何困难,请随时提问:)
来源:
- https://stackoverflow.com/questions/75021886/gmail-smtp-send-535-5-7-8-username-and-password-not-accepted
- https://support.google.com/accounts/answer/185839?sjid=7869472629511530464-AP)
- https://support.google.com/accounts/answer/185833?hl=en)
以上是使用 Python SMPT 和 Gmail 发送电子邮件很简单!的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undress AI Tool
免费脱衣服图片

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

多态是Python面向对象编程中的核心概念,指“一种接口,多种实现”,允许统一处理不同类型的对象。1.多态通过方法重写实现,子类可重新定义父类方法,如Animal类的speak()方法在Dog和Cat子类中有不同实现。2.多态的实际用途包括简化代码结构、增强可扩展性,例如图形绘制程序中统一调用draw()方法,或游戏开发中处理不同角色的共同行为。3.Python实现多态需满足:父类定义方法,子类重写该方法,但不要求继承同一父类,只要对象实现相同方法即可,这称为“鸭子类型”。4.注意事项包括保持方

要生成随机字符串,可以使用Python的random和string模块组合。具体步骤为:1.导入random和string模块;2.定义字符池如string.ascii_letters和string.digits;3.设定所需长度;4.调用random.choices()生成字符串。例如代码包括importrandom与importstring、设置length=10、characters=string.ascii_letters string.digits并执行''.join(random.c

"Hello,World!"程序是用Python编写的最基础示例,用于展示基本语法并验证开发环境是否正确配置。1.它通过一行代码print("Hello,World!")实现,运行后会在控制台输出指定文本;2.运行步骤包括安装Python、使用文本编辑器编写代码、保存为.py文件、在终端执行该文件;3.常见错误有遗漏括号或引号、误用大写Print、未保存为.py格式以及运行环境错误;4.可选工具包括本地文本编辑器 终端、在线编辑器(如replit.com)

AlgorithmsinPythonareessentialforefficientproblem-solvinginprogramming.Theyarestep-by-stepproceduresusedtosolvetaskslikesorting,searching,anddatamanipulation.Commontypesincludesortingalgorithmslikequicksort,searchingalgorithmslikebinarysearch,andgrap

ListslicinginPythonextractsaportionofalistusingindices.1.Itusesthesyntaxlist[start:end:step],wherestartisinclusive,endisexclusive,andstepdefinestheinterval.2.Ifstartorendareomitted,Pythondefaultstothebeginningorendofthelist.3.Commonusesincludegetting

类方法是Python中通过@classmethod装饰器定义的方法,其第一个参数为类本身(cls),用于访问或修改类状态。它可通过类或实例调用,影响的是整个类而非特定实例;例如在Person类中,show_count()方法统计创建的对象数量;定义类方法时需使用@classmethod装饰器并将首参命名为cls,如change_var(new_value)方法可修改类变量;类方法与实例方法(self参数)、静态方法(无自动参数)不同,适用于工厂方法、替代构造函数及管理类变量等场景;常见用途包括从

Python的csv模块提供了读写CSV文件的简单方法。1.读取CSV文件时,可使用csv.reader()逐行读取,并将每行数据作为字符串列表返回;若需通过列名访问数据,则可用csv.DictReader(),它将每行映射为字典。2.写入CSV文件时,使用csv.writer()并调用writerow()或writerows()方法写入单行或多行数据;若要写入字典数据,则使用csv.DictWriter(),需先定义列名并通过writeheader()写入表头。3.处理边缘情况时,模块自动处理

参数(parameters)是定义函数时的占位符,而传参(arguments)是调用时传入的具体值。1.位置参数需按顺序传递,顺序错误会导致结果错误;2.关键字参数通过参数名指定,可改变顺序且提高可读性;3.默认参数值在定义时赋值,避免重复代码,但应避免使用可变对象作为默认值;4.args和*kwargs可处理不定数量的参数,适用于通用接口或装饰器,但应谨慎使用以保持可读性。
