首页 > 编程语言 >python 从bulkblacklist信誉查询网站提交查询

python 从bulkblacklist信誉查询网站提交查询

时间:2023-05-31 12:07:32浏览次数:40  
标签:try domain python list 查询 bulkblacklist black print data

import urllib  
import urllib2  
#import webbrowser  
import re
import socket


def is_domain_in_black_list(domain, ip):
    try_time = 3
    url = "http://www.bulkblacklist.com/"  
    for i in range(try_time):
        try: 
            data = urllib.urlencode({'domains': domain})  
            results = urllib2.urlopen(url, data, timeout=30)  
            all_data = results.read()
            #with open("results.html", "w") as f:                
            #    f.write(all_data)                  
            #print all_data
            #webbrowser.open("results.html") 
            assert all_data.find(domain) >= 0
            search = re.compile(r'(\d+\.\d+\.\d+\.\d+)')  
            black_ip_list = search.findall(all_data)
            print black_ip_list
            return ip in black_ip_list
        except urllib2.URLError, e:  
            if isinstance(e.reason, socket.timeout):  
                print domain, "timeout:", e
            else:
                print domain, "err:",e 
    return False


def is_domain_access_normal(domain):
    try_time = 3
    for i in range(try_time):
        try:  
            url = "http://%s" % domain
            html = urllib2.urlopen(url, timeout=10).read()  
            #print url, html
            return True
        except urllib2.URLError, e:  
            if isinstance(e.reason, socket.timeout):  
                print "timeout:", e
            else:
                print "other err:",e
    return False

    
domain = "tojoycloud.org"
print "is_domain_in_black_list:", is_domain_in_black_list(domain, "1.1.2.3")
print "is_domain_access_normal:", is_domain_access_normal(domain)

 

标签:try,domain,python,list,查询,bulkblacklist,black,print,data
From: https://blog.51cto.com/u_11908275/6385781

相关文章

  • python avro 数据格式使用demo
    {"name":"UEProcedures","type":"record","fields":[{"name":"imsi","type":"string"},{"name":"time_at","type":&quo......
  • 【Python-Scripts】自动删除Jenkins任务构建历史记录
    任务背景: Jenkins构建历史记录很多,占用服务器磁盘空间较大,根据开发需求定期删除历史记录。 1#!/usr/bin/envpython2#-*-coding:utf-8-*-345importdatetime6importjenkins7importtime8fromjenkinsapi.jenkinsimportJenkins91011def......
  • < Python全景系列-9 > Python 装饰器:优雅地增强你的函数和类
    欢迎来到我们的系列博客《Python全景系列》第九篇!在这个系列中,我们将带领你从Python的基础知识开始,一步步深入到高级话题,帮助你掌握这门强大而灵活的编程语法。无论你是编程新手,还是有一定基础的开发者,这个系列都将提供你需要的知识和技能。**装饰器在Python中扮演了重要的角......
  • python计算IRR公式
    Python计算IRR公式fromscipyimportoptimize#计算现值defxnpv(rate,cashflows):returnsum([cf/(1+rate)**((t-cashflows[0][0]).days/365.0)for(t,cf)incashflows])#计算xirrdefxirr(cashflows,guess=.01):try:returnoptimize.n......
  • python的peft包导入PeftModel时报importerror-cannot-import-name-unknown-location
    一般出现这种问题的原因是该版本的peft包中没有PeftModel,这种情况都需要降级。我验证了以下,我实在alpaca-lora项目中使用peft,alpaca-lora的项目大概在2个月以前更新,而peft包实在最近更新的4.0版本,而2个月以前peft还是2.0版本,所以我果断把peft降到2.0版本,然后问题就解决了。......
  • Python的分布式网络爬虫
    分布式爬虫其实就是指利用多台计算机分布式地从互联网上采集数据的一种爬虫。它可以把大规模的任务分解成若干小规模的,由多台计算机并行进行处理,大大提高了效率和速度。分布式爬虫有很多优势:解决单机爬虫效率低的问题,分布式爬虫可以将任务分配给多个节点并行处理,大大提高了效率和......
  • Python抽象类
    Python抽象类python没有接口类型,因为python是动态类型的语言,像接口这种轻耦合的东西在python中随处都是,例如内置的魔法方法等,甚至可以说在python这种天马行空的语言中接口显的反而有点清秀。不过Python还是提供了像java中那样的抽象类定义方法,某些时候还是有用的,顾名思义抽象类......
  • python~发布自己的py组件
    你使用python写的东西,想让其它人直接使用,可以像java,.net一样,发到包管理平台即可,在python中,你可以使用twine这个工具来实现发布,就像.net里的nuget,java里的mvndeploy一样。本地自己用添加一个hello.py的文件,里面有个say方法,打印字符importsysdefsay(to):print('hel......
  • centos7 安装python3.8.16
    升级openssl下载opensslopenssl官方下载地址:https://www.openssl.org/source/wgethttps://github.com/openssl/openssl/archive/OpenSSL_1_1_1d.tar.gz解压tar-zxvfOpenSSL_1_1_1d.tar.gz编译安装进入openssl-OpenSSL_1_1_1dcdopenssl-OpenSSL_1_1_1d指定安装......
  • python为什么要使用闭包
    为什么要使用闭包闭包避免了使用全局变量,此外,闭包允许将函数与其所操作的某些数据(环境)关连起来。这一点与面向对象编程是非常类似的,在面对象编程中,对象允许我们将某些数据(对象的属性)与一个或者多个方法相关联。一般来说,当对象中只有一个方法时,这时使用闭包是更好的选择。来看一个例......