强大的OSINT情报工具:Blackbird用户名与邮箱搜索分析平台

项目标题与描述

Blackbird是一款强大的OSINT(开源情报)工具,专为用户名和邮箱搜索而设计。该工具集成了WhatsMyName项目的600多个社交平台数据库,能够快速准确地查找目标账户在不同平台的存在情况。项目采用Python开发,提供命令行界面,支持AI智能分析和多种数据导出格式。

功能特性

  • 多平台搜索: 支持600+社交媒体的用户名和邮箱反向查找
  • 智能AI分析: 集成免费AI引擎,自动生成用户行为和技术画像
  • 多种导出格式: 支持PDF、CSV、JSON等多种结果导出方式
  • 批量处理: 支持用户名列表文件和邮箱列表文件的批量处理
  • 元数据提取: 能够从响应中提取丰富的用户元数据信息
  • 实时更新: 自动检查并更新平台数据库,确保数据最新
  • 智能过滤: 内置结果过滤机制,减少误报率

安装指南

系统要求: Python 3.6+,支持Windows、Linux、macOS系统

bash 复制代码
# 克隆仓库
git clone https://github.com/p1ngul1n0/blackbird
cd blackbird

# 安装依赖
pip install -r requirements.txt

依赖项: rich、aiohttp、reportlab、python-dotenv、requests等

使用说明

基本用户名搜索:

bash 复制代码
python blackbird.py --username johndoe

邮箱搜索:

bash 复制代码
python blackbird.py --email johndoe@example.com

使用AI分析:

bash 复制代码
python blackbird.py --username johndoe --ai

导出PDF报告:

bash 复制代码
python blackbird.py --email johndoe@example.com --pdf

设置AI API密钥:

bash 复制代码
python blackbird.py --setup-ai

核心代码

主程序初始化:

python 复制代码
def initiate():
    if not os.path.exists("logs/"):
        os.makedirs("logs/")
    logging.basicConfig(
        filename=config.LOG_PATH,
        level=logging.DEBUG,
        format="%(asctime)s - %(name)s - %(levelname)s - %(message)s",
    )

    parser = argparse.ArgumentParser(
        prog="blackbird",
        description="An OSINT tool to search for accounts by username in social networks.",
    )
    parser.add_argument(
        "-u",
        "--username",
        nargs="*",
        type=str,
        help="One or more usernames to search.",
    )

站点检查核心逻辑:

python 复制代码
async def checkSite(site, method, url, session, semaphore, config):
    returnData = {
        "name": site["name"],
        "url": url,
        "category": site["cat"],
        "status": "NONE",
        "metadata": None,
    }
    async with semaphore:
        response = await do_async_request(method, url, session, config)
        if response == None:
            returnData["status"] = "ERROR"
            return returnData
        try:
            if response:
                if (site["e_string"] in response["content"]) and (
                    site["e_code"] == response["status_code"]
                ):
                    if (site["m_string"] not in response["content"]) and (
                        (site["m_code"] != response["status_code"])
                        if site["m_code"] != site["e_code"]
                        else True
                    ):
                        returnData["status"] = "FOUND"

AI分析功能:

python 复制代码
def send_prompt(prompt, config):
    config.console.print(f":sparkles: Analyzing with AI...")
    apikey = load_api_key_from_file(config)
    if not apikey:
        config.console.print(":x: No API key found. Please obtain an API key first with --setup-ai")
        return None
    headers = {
        "Content-Type": "application/json",
        "User-Agent": "blackbird-cli",
        "x-api-key": apikey
    }
    payload = {
        "prompt": prompt
    }

PDF导出功能:

python 复制代码
def saveToPdf(foundAccounts, resultType, config):
    regularFontFile = os.path.join(
        os.getcwd(),
        config.ASSETS_DIRECTORY,
        config.FONTS_DIRECTORY,
        config.FONT_REGULAR_FILE,
    )
    boldFontFile = os.path.join(
        os.getcwd(),
        config.ASSETS_DIRECTORY,
        config.FONTS_DIRECTORY,
        config.FONT_BOLD_FILE,
    )
    try:
        pdfmetrics.registerFont(TTFont(config.FONT_NAME_REGULAR, regularFontFile))
        pdfmetrics.registerFont(TTFont(config.FONT_NAME_BOLD, boldFontFile))
相关推荐
偷吃的耗子几秒前
【CNN算法理解】:CNN平移不变性详解:数学原理与实例
人工智能·算法·cnn
勾股导航1 分钟前
OpenCV图像坐标系
人工智能·opencv·计算机视觉
神的泪水2 分钟前
CANN 生态实战:`msprof-performance-analyzer` 如何精准定位 AI 应用性能瓶颈
人工智能
芷栀夏3 分钟前
深度解析 CANN 异构计算架构:基于 ACL API 的算子调用实战
运维·人工智能·开源·cann
威迪斯特3 分钟前
项目解决方案:医药生产车间AI识别建设解决方案
人工智能·ai实时识别·视频实时识别·识别盒子·识别数据分析·项目解决方案
笔画人生3 分钟前
# 探索 CANN 生态:深入解析 `ops-transformer` 项目
人工智能·深度学习·transformer
feasibility.5 分钟前
AI 编程助手进阶指南:从 Claude Code 到 OpenCode 的工程化经验总结
人工智能·经验分享·设计模式·自动化·agi·skills·opencode
程序猿追5 分钟前
深度剖析 CANN ops-nn 算子库:架构设计、演进与代码实现逻辑
人工智能·架构
灰灰勇闯IT8 分钟前
领域制胜——CANN 领域加速库(ascend-transformer-boost)的场景化优化
人工智能·深度学习·transformer
灰灰勇闯IT9 分钟前
从零到一——CANN 社区与 cann-recipes-infer 实践样例的启示
人工智能