基于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

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java静态键入和编写一个简单的矩阵库   java如何最小化层次结构的代码量   这是在Google云数据存储中使用Java按键查询的正确方法吗?   java Android php+mysql+json执行异步任务时出错   java Hadoop Hbase访问被拒绝异常   java如何在json中指定特定的对象路径   JavaSpringJPA/Hibernate在使用@modify和@Query进行特殊更新之前调用完整更新   java多个错误通知   java插入Linkedlist和Node   java将图像放在webview中并调整其宽度   Java没有真实属性的缺点是什么?   java“isGooglePlayServicesAvailable”(此)已被弃用   java托管HIPPO CMS   安卓 Java。网URI构造函数不是编码字符(&C)   java如何用hibernate映射Deque?   java传递枚举类型作为参数   java自由堆大小在Maven中不会增加   java如何使用hashmap和arraylist的循环逻辑?   java如何使用JDBC复制MySql数据库