我想自动验证大量电子邮件。
我的第一个想法是运行 telnet 并使用每封电子邮件查询 Google SMTP 服务器,但随后我必须解析输出,这会为流程增加一个额外的步骤,鉴于要运行的测试数量,这将使流程无限慢。
所以,我的问题是,什么是批量测试电子邮件有效性的计算成本最低的方法。
我想自动验证大量电子邮件。
我的第一个想法是运行 telnet 并使用每封电子邮件查询 Google SMTP 服务器,但随后我必须解析输出,这会为流程增加一个额外的步骤,鉴于要运行的测试数量,这将使流程无限慢。
所以,我的问题是,什么是批量测试电子邮件有效性的计算成本最低的方法。
连接到 Google 邮件交换器将允许仅验证由 Google 自己处理的电子邮件地址。最重要的是,解析 SMTP 对话框并不是一件容易的事,前提是您需要处理所有可能的 SMTP 状态代码。此外,如果您超载其邮件交换器,以这种方式验证大量电子邮件地址将使 Google 禁止您的 IP 地址。
话虽如此,假设您在 Windows 下运行,如果您需要从命令行验证您的电子邮件地址列表,我建议使用我们的电子邮件验证库和一个简单的 PowerShell 脚本。我们的软件通过自定义Verify-EmailAddress
cmdlet 支持 PowerShell,或者,对于高级场景,通过一组可以在 PowerShell 中轻松使用的 .NET 类,它可以执行高级语法检查、DNS 验证、邮箱存在测试等等更多。
下面是一个简短的示例,展示了如何使用内置Verify-EmailAddress
cmdlet 验证电子邮件地址列表:
'me@example.com', 'you@example.com' |
? { (Verify-EmailAddress $_ -Level MailBox).IsSuccess }