基于asyncio/aiodns的异步dnsbl列表检查器。
pydnsbl的Python项目详细描述
asyncdnsbl列出基于asyncio/aiodns的检查程序。检查IP是否列在反垃圾邮件DNS黑名单中。支持多个DNS黑名单。对异步dns请求使用aiodns。通常,运行60多个列表的IP检查不到一秒钟。
安装
管道入口管道
要求
python>;=3.5,aiodns
用法
>>> from pydnsbl import DNSBLChecker >>> checker = DNSBLChecker() >>> result = checker.check_ip('8.8.8.8') >>> result <DNSBLResult: 8.8.8.8 (0/62)> # google is clean >>> result = checker.check_ip('68.128.212.240') >>> result <DNSBLResult: 68.128.212.240 [BLACKLISTED] (12/62)> # this is just for example >>> result.blacklisted True # detected_by dnsbl providers and their category tag for this ip >>> result.detected_by {'web.dnsbl.sorbs.net': ['unknown'], ... 'zen.spamhaus.org': ['spam', 'exploits']}
扩展/重写提供程序
基本
>>> from pydnsbl import DNSBLChecker, providers >>> providers = BASE_PROVIDERS + [providers.Provider('yourprovider1.com'), ...] >>> checker = DNSBLChecker(providers=providers) # in providers parameter you can pass providers dnsbl host or Provider class object (see Advanced topic below)
高级
查看providers.py文件。
- 使用provider类创建自定义提供程序。
- 重写process_response方法provider类以将提供程序响应代码(127.0.0.x)映射到dnsblchecker类别。
联系人
请随时与我联系:ippolitov87,网址:gmail.com