PSL判定域名后缀是否是合法注册域名

判定域名后缀是否是合法注册域名

在做有关流量中域名聚类的事情,需要进行数据过滤。做实验过程中的小探索,如何利用PSL(public suffix list)判断域名后缀是否合法,即是注册域名。
发现有两个python的包,用两个包做出来效果完全相同,即在同一数据集滤除相同的不合法域名

#1.
from publicsuffix import PublicSuffixList
import codecs
psl_file = codecs.open('/home/wangqiang/public_suffix_list.dat', encoding='utf8')#需要实现下载好github中的PSL列表
psl = PublicSuffixList(psl_file)
#from publicsuffix import fetch       用在线的列表也一样
#psl_file = fetch()  
i = len(psl.get_public_suffix(domain).split("."))
if i <2:           #如果层数小于2,则说明不是合法注册的域名
      print(domain+"illegal")
      
      
      
#2.
from publicsuffixlist import PublicSuffixList
psl1 = PublicSuffixList(accept_unknown=False)  #另一个包 ,设置为不接受未知域名,返回结果为空,说明不是合法的注册域名
if psl1.publicsuffix(domain)==None:
     print(domain+"illegal")

猜你喜欢

转载自blog.csdn.net/weixin_42280274/article/details/88709068