使用python

时间:2017-04-20 09:13:59

标签: python

以下是我用于python的邮件ID验证的代码:

import re

with open("mail.txt","r") as k:
    `enter code here`arr=k.readlines()
arr1=[]
#print (arr)
for line in arr:
    arr1.extend(re.split("\s+|,+|:+|;+",line,re.M|re.I))

print (arr1)    

for j in arr1:
    if (re.match("(.+)\@(.)+",j,re.M|re.I)):
        print (j)

但是,我的问题是nj@hotmail.comhhhh被打印出来了。我只想打印带有3个字母域名的邮件ID。

1 个答案:

答案 0 :(得分:1)

快速解决方案是制作一个列表(或者您可以下载一个),并使用它来验证您的电子邮件。
Tld列表示例:

tld_list = [ 'com', 'net', 'org', 'gov', 'edu', 'it', 'es', 'fr' ]  

现在在循环中使用它:

for j in arr1:
    if re.match("(.+)\@(.)+",j,re.M|re.I) and j.split('.')[-1].lower() in tld_list :
        print(j)