【信息收集】从FoFa—API接口数据写入TXT和Excel

 email值和key值获取

https://fofa.info/userInfo

更改代码url值

import requests
import base64
import xlwt
import time

headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:81.0) Gecko/20100101 Firefox/81.0"}
getquery = input("查询语法(无需base64编码):", )
strquery = str.encode(getquery)
bquery = base64.b64encode(strquery)
fquery = str(bquery, "utf-8")
size = input("查询条数:", )
url = "https://fofa.info/api/v1/search/all?email=你的email值&key=你的KEY值&" + "qbase64=" + fquery + "&page=1&size=" + str(
    size) + "&results={ip}"
print(url)
html = requests.get(url=url, headers=headers).json()
print(f'开始写入{getquery}.txt')
for i in html['results']:
    with open(f'{getquery}.txt', 'a+', encoding='utf-8') as Ip_Port:
        Ip_Port.write('域名:' + i[0] + '\n' + 'IP:' + i[1] + '\n' + '端口:' + i[2] + '\n' + '=' * 20 + '\n')
        print(i[0])
print(f'写入{getquery}.txt成功')

number = 1
File_Found = xlwt.Workbook(encoding='utf-8')  # 工作簿
File_Sheet = File_Found.add_sheet('FOFA数据', cell_overwrite_ok=True)  # 工作表
col = ('域名', 'IP', '端口')
nowtime = str(round(time.time())) + '_' + f'{getquery}'
for i in range(0, len(html["results"])):
    data = html["results"][i]
    for k in range(0, 3):
        File_Sheet.write(0, k, col[k])
        File_Sheet.write(i + 1, k, data[k])
savepath = f'M:/{nowtime}.xls'
File_Found.save(savepath)
print(f'Excel文件生成成功,已保存至M:/{nowtime}.xls')

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值