【问题标题】:how to best ignore free domain emails for sending a pdf via email(python)如何最好地忽略免费域电子邮件以通过电子邮件(python)发送pdf
【发布时间】:2011-12-06 11:15:32
【问题描述】:

我需要将某个 pdf 发送给填写表格的企业用户,而不是发送给使用 gmail 等公共域电子邮件地址的用户。这不是垃圾邮件,用户正在填写表格以获取电子邮件中的 pdf。表单提到使用公司电子邮件 ID,但有些人仍然使用他们的个人电子邮件地址注册。

问题:

实现这一目标的最佳方法是什么?我正在使用以下服务,并且随着我添加更多提供程序而变得越来越大:

“如果 sender_address 中的“gmail”或 sender_address 中的“hotmail”或 sender_address 中的“yahoo”或 sender_address 中的“aol.com”:”

【问题讨论】:

  • 不想听起来很讨厌,但这听起来像是在向企业用户发送垃圾邮件......或者......?
  • “公共领域”大概是指“免费”?因为 gmail 不是公共域,yahoo 邮件、aol 邮件、...
  • 它只适用于填写表格下载pdf的用户,所以没有垃圾邮件。表单提到使用公司电子邮件 ID,但我们仍然很少收到 @gmail 等的请求。
  • 那么你应该编辑你的问题来这么说。

标签: python email


【解决方案1】:

您可以将inlist 结合使用,这是一个示例,请勿在生产环境中使用它,它可能会损坏。

list = ['gmail', 'aol', 'hotmail', 'yahoo']
myemail = 'foo@aol.com'
if mystring.split('@')[1].split('.')[0] in list:
    print 'I`m public'

【讨论】:

    【解决方案2】:

    要解析电子邮件地址,我会查看一些 regex,它已经过测试以降低解析错误的风险。

    要按域过滤用户,我会将您要过滤的所有域添加到一个集合中并使用in 运算符进行检查(这应该比检查list 更有效)。

    最后,正如@mac 所指出的,让您的用户订阅时事通讯(或您想要发送的任何内容)可能会更好,而不是向他们发送未经请求的电子邮件。

    【讨论】:

      猜你喜欢
      • 2018-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-21
      • 2023-03-10
      • 1970-01-01
      • 2022-01-13
      • 2023-03-06
      相关资源
      最近更新 更多