信息收集之后_es日志收集

信息收集之后_es日志收集一.摘要Censys提供了search、view、report、query、export以及data六种API接口。search接口的请求地址是https://www.censys.io/api/

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一.摘要

Censys提供了search、view、report、query、export以及data六种API接口。

search接口的请求地址是https://www.censys.io/api/v1/search/?,其中?的地方可以是ipv4、websites或者certificates,分别代表搜索ipv4主机、网站和证书。我们的POST请求应该是一组包含query、page、fields的json数据,其中query指的是相应的搜索语句;page代表返回的页码,Censys总是返回一页的数据;fields指的是你希望返回值中包含哪些字段,具体包含哪些字段你可以自己去看一下。

 

JSON有两种结构:
  对象在js中表示为“{}”括起来的内容,数据结构为 {key:value,key:value,…}的键值对的结构
  数组在js中是中括号“[]”括起来的内容,数据结构为 [“java”,”javascript”,”vb”,…]

信息收集之后_es日志收集

二.利用代码

# -*- coding: UTF-8 -*-
#https://www.censys.io/api/v1/search/ipv4
#post:{"query": "keyword", "page": 1, "fields": ["ip", "protocols", "location.country"]}
#query指的是相应的搜索语句;page代表返回的页码;fields指的是你希望返回值中包含哪些字段
import sys
import json
import requests
import time

API_URL = "https://www.censys.io/api/v1"
UID = "85e64536-7534-4177-8c72-9a383bf01f12"
SECRET = "9hCyul4KXJKXieyXeGIFT0lr04rbN9yQ"
page=1
PAGES=2
    
def getIp(page):
    iplist=[]
    data = {
                "query":"keyword", 
                "page":page, 
                "fields":["ip","protocols","location.country"]
            }        
    try:
        res = requests.post(API_URL + "/search/ipv4", data=json.dumps(data), auth=(UID, SECRET))
    except:
        pass
    try:
        results = res.json()
    except:
        pass
    if res.status_code != 200:
        print "error occurred: %s" % results["error"]
        sys.exit(1)
    #print "Total_count:%s" % (results["metadata"]["count"])
    iplist.append("Total_count:%s" % (results["metadata"]["count"]))
    for result in results["results"]:
        #print "%s in %s" % (result["ip"],result["location.country"][0])
        #iplist.append((result["ip"]+':'+i+' in '+result["location.country"][0]))
        for i in result["protocols"]:
            iplist.append(result["ip"]+':'+i+' in '+result["location.country"][0])    
    return iplist
    
if __name__ == '__main__':
    print "start..."
    with open('censys.txt','a') as f:
        while page <= PAGES:
            iplist=(getIp(page))
            print 'page is:'+str(page)
            page += 1
            time.sleep(1)
            for i in iplist:
                f.write(i+'\n')

    
    

首先request请求,post提交data和auth信息,返回json数据包,利用json数据结构找的所需信息,保存并返回一个列表。
主函数判断page大小,不够就调用getIp函数,最后循环写入结果。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/166464.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 简图记录-曾国藩家训 观后感「建议收藏」

    简图记录-曾国藩家训 观后感「建议收藏」简图记录 总结~材料 郦波教授的百家讲坛 和 部分相关书籍  一个人疑惑的时候,总是希望通求知如过阅读找到自己的答案,读史可以使人明智,历史总是有借鉴意义,相对于空谈鸡汤无疑更有说服力。我认为向周围的人学习是个人成长一个非常重要的手段,周围的人都是真实的而且在一定范围是可交流讨论的,相对一些当代的名人 他们的事迹往往都是经过加工 或 胡编 鸡汤意味更浓一些,那么另外一条路就是找一些古代的贤…

    2022年6月4日
    33
  • jsp out.print报错_idea代码错误但不提示

    jsp out.print报错_idea代码错误但不提示昨晚从网上copy一份代码到IDEA时,发现其中IDEA中的JSP文件在写入out.println时会报错,如图所示上网查阅资料发现有如下说法A、新建Java工程时,应选择JavaEnterprise而非Java里的webapplication(JavaEnterprise会自动关联Tomcat到Dependencies)B、应将Tomcat关联到File-&gt;ProjectStruct…

    2022年10月2日
    2
  • currentstyle 织梦_织梦arclist标签支持高亮currentstyle属性方法

    currentstyle 织梦_织梦arclist标签支持高亮currentstyle属性方法找到include/taglib/arclist.lib.php第一步:查找:$channelid=$ctag->GetAtt(‘channelid’);替换:$channelid=$ctag->GetAtt(‘channelid’);$currentstyle=$ctag->GetAtt(‘currentstyle’);第二步:查找:$ct…

    2022年7月14日
    15
  • icem网格划分如何给内部面网格,ICEM CFD处理混合网格划分中低质量的问题

    icem网格划分如何给内部面网格,ICEM CFD处理混合网格划分中低质量的问题所谓的混合网格,指的是模型中同时存在结构网格与非结构网格的情况。采用混合网格的主要优势在于:对于复杂的几何,我们可以将其分解成多个几何,对于适合划分结构网格的采用结构网格划分方式,而对于非常复杂的部分,可以使用非结构方式进行划分。然而采用混合网格也有一些缺点:交接面位置网格质量会非常差。因此我们需要采用一些方式对网格质量进行改善。另外对于交界面的处理也存在一些问题。我们先说说在ICEMCFD中进…

    2022年5月26日
    35
  • 【Linux + Makefile】简单实用的Makefile模板来了

    【Linux + Makefile】简单实用的Makefile模板来了今天给大家介绍一个简单实用的Makefile模板,也可以当做学习Makefile核心内容的范例,里面都有详细的注释,清晰明了。这个Makefile主要解决以下需求:#######################################################################################需求:#1.编译输出的所有文件均放在一个outp…

    2022年6月14日
    32
  • php中的ceil和floo以及round函数「建议收藏」

    php中的ceil和floo以及round函数「建议收藏」php中的ceil和floo以及round函数

    2022年4月21日
    51

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号