Get_domains(调用ICP及mail反查接口获取资产)

写了个小工具,目的是尽可能多的获取资产,这个工具调用的是站长工具的ICP备案查询和邮箱反查功能。

环境:Python3

get_domains.py:

import requests
import re

host = ‘‘
mail = ‘‘

headers = {
    ‘Cookie‘:‘‘,
    ‘User-Agent‘:‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36‘
}

def getdomain_icp(host):
    url = ‘https://icp.chinaz.com/ajaxsync.aspx?at=beiansl&callback=jQuery111308504784465392665_1555747182932&host={}&type=host&_=1555747182933‘.format(host)
    req = requests.get(url)
    domains = re.findall(‘MainPage:"(.*?)",‘,req.text,re.S)
    for domain in domains:
        with open(‘domains.txt‘,‘a+‘) as f:
            f.write(domain + "\n")

def getdomain_mail(mail):
    url = ‘http://whois.chinaz.com/reverse?host={}&ddlSearchMode=1&page=1‘.format(mail)
    req = requests.get(url)
    page = re.findall(‘<span class="col-gray02">共(.*?)页‘,req.text)[0] #获取页数
    page = int(page) + 1
    for i in range(1,page):
        real_req = requests.get(‘http://whois.chinaz.com/reverse?host={}&ddlSearchMode=1&page={}‘.format(mail,i),headers=headers)
        domains = re.findall(‘<div class="w13-0 domain"><div class="listOther"><a href="/(.*?)"‘,real_req.text)
        for domain in domains:
            with open(‘domains.txt‘,‘a+‘) as f:
                f.write(domain + "\n")

def main(host,mail=‘‘):
    getdomain_icp(host)
    if mail!=‘‘:
        getdomain_mail(mail)

if __name__ ==‘__main__‘:
    main(host=host,mail=mail)

使用时只需要修改host以及mail,host为类似jd.com/tencent.com这种域名,即根域名,另headers中的cookie字段需要自己登录站长工具后在headers中获取,否则mail反查不到所有信息,mail默认为空,可以只使用icp备案查询,即只修改host。

未进行去重处理,可以用我上一个工具在获取banner时去重,结果会存在当前目录下的domains.txt中。

脚本使用的为单线程,因为怕被封IP。

原文地址:https://www.cnblogs.com/P1g3/p/10741516.html

时间: 2024-08-30 16:59:32

Get_domains(调用ICP及mail反查接口获取资产)的相关文章

IP反查网站,ip反查接口,旁站查询接口大全,通过IP查域名汇总:

http://cn.bing.com/search?q=ip%3A220.181.111.85 http://dns.aizhan.com/?q=www.baidu.com http://domains.yougetsignal.com/domains.php?remoteAddress=lcx.cc http://i.links.cn/sameip/61.164.241.103.html http://ip.robtex.com/ http://rootkit.net.cn/index.asp

自定义类签发校验token-实现多方式登录-自定义反爬类-admin后台表管理字段自定义-群查接口-搜索-排序-分页

目录 复习 今日 签发token 校验token 案例:实现多方式登陆签发token 案例:自定义认证反爬规则的认证类 admin使用自定义User表:新增用户密码密文 群查接口各种筛选组件数据准备 drf搜索过滤组件 drf排序过滤组件 drf基础分页组件 复习 """ 频率组件:限制接口的访问频率 源码分析:初始化方法.判断是否有权限方法.计数等待时间方法 自定义频率组件: class MyThrottle(SimpleRateThrottle): scope = 'sm

签发token、校验token、多方式登录签发token的实现、自定义认证反爬规则的认证类、admin使用自定义User表:新增用户密码密文、群查接口各种筛选组件数据准备、drf搜索过滤组件、drf排序过滤组件、drf基础分页组件

签发token 源码入口 # 前提:给一个局部禁用了所有 认证与权限 的视图类发送用户信息得到token,其实就是登录接口 # 1)rest_framework_jwt.views.ObtainJSONWebToken 的 父类 JSONWebTokenAPIView 的 post 方法 # 接收有username.password的post请求 # 2)post方法将请求得到的数据交给 rest_framework_jwt.serializer.JSONWebTokenSerializer 处

C段查询雏形之在Java中反查一个IP上的所有域名(旁站查询)

这里使用了两个接口来反查IP,分别是"站长工具"和"爱站"的接口,两者各有千秋,结合起来查询就较为准确了. 注:我目前只写了个初始版本,还不太完善,但是可以基本使用了,代码中关键地方有注释,所以我就不多解释了 算法核心: package NmapTest; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.Inpu

iOS 根据经纬度反查 地名

在iOS中 定位自己的当前位置,知道经纬度很简单,然后有些时候要知道地名,apple 也有了现成的api直接调用就可以(以下方法是iOS5.0以上的,现在基本都忽略了 iOS5.0以下的设备) #pragma mark - #pragma mark CLLocationManagerDelegate - (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation

小鹤双拼飞扬版反查编码功能解释-by老随风

更新时间:2015-05-22 反查编码功能 文中例字均为(码maum) 关于知道编码也不知道为何这么拆,请明白鹤形是拆一个字首尾两部分的形码 ②ofi   (知道字怎么读,想知道该字是否有其他编码) ③ofi: (不知道字怎么读,但该字可以复制到剪贴板) ④:i   (查某字的详细信息:读音.笔画数.部首.笔顺.小鹤编码.释义) ⑤ozd  (打开候选窗字典功能) ⑥omb  (查码表,这个如果也查不出来的话,说明小鹤飞扬版词库没这个字或词) ⑦ohd  (这个专治笔顺和读音不对的亲们) 关于

SQL自连接(源于推荐算法中的反查表问题)

"基于用户的协同过滤算法"是推荐算法的一种,这类算法强调的是:把和你有相似爱好的其他的用户的物品推荐给你. 要实现该推荐算法,就需要计算和你有交集的用户,这就要用到物品到用户的反查表. 先举个例子说明下反查表:甲喜欢的物品有:A.B.C:乙喜欢的物品有:B.E.F:丙喜欢的物品有:A.J.K:而你喜欢的物品是:A.J.M.反查表就是喜欢A物品的有你.甲.丙,喜欢J物品的有你.丙,喜欢M物品的只有你,这就是和你喜欢的物品有联系的用户.有了这个反查表,我们就可以看出和你有关系的用户只有甲和

Socket调用Close后如何终止套接口的问题

setsockopt 设置 SO_LINGER 选项 此选项指定函数close对面向连接的协议如何操作(如TCP).内核缺省close操作是立即返回,如果有数据残留在套接口缓冲区中则系统将试着将这些数据发送给对方. SO_LINGER选项用来改变此缺省设置.使用如下结构: struct linger { int l_onoff; /* 0 = off, nozero = on */ int l_linger; /* linger time */ }; 有下列三种情况: 1.设置 l_onoff为

PHP地址反查返回经纬度 百度API

/** * 百度地图   根据地址反查经纬度 */ public function search_xy(){ $address = str_replace(' ','',$address); $rows = file_get_contents("http://api.map.baidu.com/geocoder/v2/?ak=xxxxxxxxxxxxxx&callback=renderOption&output=json&address=首都图书馆&city=北京