Condor2026/Diabolic_Canarias

GitHub: Condor2026/Diabolic_Canarias

一款针对加那利群岛数字报纸的被动 OSINT 工具,通过自动抓取、分类和关联分析事件新闻来检测犯罪模式。

Stars: 0 | Forks: 0

# Diabolic Canarias [![版本](https://img.shields.io/badge/version-5.3-red)](https://github.com/Condor2026/Diabolic_Canarias) [![Termux](https://img.shields.io/badge/Termux-Compatible-orange)](https://termux.com) [![Linux](https://img.shields.io/badge/Linux-Compatible-lightgrey)](https://linux.org) [![Web Scraping](https://img.shields.io/badge/Web%20Scraping-Legal-brightgreen)](https://es.wikipedia.org/wiki/Web_scraping) ![License](https://img.shields.io/badge/license-GPLv3-blue) ![Python](https://img.shields.io/badge/python-3.8+-blue) ![OSINT](https://img.shields.io/badge/OSINT-Pasivo%20%7C%20Analítico-blueviolet) ![Platform](https://img.shields.io/badge/platform-Linux%20%7C%20Termux-lightgrey) ![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen) ![Communities](https://img.shields.io/badge/communities-15%20CCAA-brightgreen) ![Stars](https://img.shields.io/github/stars/Condor2026/Diabolic_Canarias?style=social) ![Forks](https://img.shields.io/github/forks/Condor2026/Diabolic_Canarias?style=social) **DIABOLIC Canarias** 是一款被动与分析性的 OSINT 工具,用于监控**加那利群岛的数字报纸**(特内里费岛、大加那利岛、兰萨罗特岛、富埃特文图拉岛、拉帕尔马岛、拉戈梅拉岛、耶罗岛),以检测、分类和可视化犯罪模式。 它不存储个人数据,仅保存标题、日期和各岛屿的位置信息。核心理念:*"能力越大,责任越大"*。 ## 📌 目录 - [🔍 DIABOLIC 是做什么的?](#-qué-hace-diabolic) - [⚙️ 核心功能](#️-características-clave) - [🛠️ 技术与架构](#️-tecnología-y-arquitectura) - [📥 安装与使用](#-instalación-y-uso) - [🖥️ 终端模式(10 个命令)](#️-modo-terminal-10-comandos) - [🌐 交互式 Web 模式](#-modo-web-interactivo) - [🗺️ 监控来源](#️-fuentes-monitorizadas) - [🏝️ 覆盖岛屿](#️-islas-cubiertas) - [🧠 OSINT 类型与方法论](#-tipo-de-osint-y-metodología) - [⚖️ 道德、法律与数据保护](#️-ética-legalidad-y-protección-de-datos) - [🤝 贡献与未来](#-contribuciones-y-futuro) - [📜 许可证](#-licencia) ## 🔍 DIABOLIC 是做什么的? DIABOLIC 自动化了从加那利群岛当地和区域媒体**抓取事件新闻**的过程。无需每天阅读数十份报纸,该工具可以: - **提取**与犯罪相关的新闻标题、日期、来源和地理位置(岛屿)。 - **分类**将事件分为不同类别(盗窃、诈骗、毒品、暴力、谋杀、旅游非法侵入等)。 - **存储**数据以 JSON 格式保存在本地,不保存任何个人数据。 - **分析**时间趋势(7、30、90 天)以及按岛屿和犯罪类型进行的分布。 - **检测**事件之间的关联:相同区域、相近日期、相同的作案手法可能指向同一个团伙。 - **可视化**通过带有柱状图和动态过滤器的交互式 Web 界面展示结果。 - **导出**数据为 CSV 或 JSON 以供外部分析。 ## ⚙️ 核心功能 ### 🔁 User‑Agent 轮换 通过在每次请求中模拟不同的浏览器和版本来避免被报纸网站封锁。 ### 🧠 智能分页 自动尝试多达 12 种不同的分页格式(`/pagina/2`、`?page=2`、`?offset=2` 等),并记住对每个域名有效的格式。 ### 🔎 自动 URL 检测器 如果报纸的 URL 失效,系统会自动寻找替代路径(`/sucesos`、`/local`、`/tribunales`、`/actualidad/sucesos` 等)并更新配置。 ### 📊 高级犯罪分类 使用广泛的关键词列表,包括加那利当地的俚语(例如,虽然不是犯罪,但可以结合 *"guagua"* 的语境;同时支持添加诸如 *"alunicero"*、*"butrón"*、*"peta"* 等术语)。该列表易于扩展。 ### 🔗 事件之间的关联 - **按类型和岛屿**(例如:7 天内在特内里费岛发生 5 起盗窃案)。 - **按作案手法**(检测如“alunicero”或“butrón”等词汇的重复出现)。 - **时间频率**(事件/天)。 ### 🌐 交互式 Web 界面 - 按岛屿和犯罪类型显示柱状图。 - 按时间段过滤(过去 7、30、90 天)。 - 最近 20 起事件的列表。 - 用于更新数据和导出 JSON/CSV 的按钮。 ### 🖥️ 完整的终端菜单 包含 10 个命令,无需打开浏览器即可执行所有功能。 ## 🛠️ 技术与架构 - **语言**:Python 3.8+ - **Web 框架**:Flask(轻量级服务器) - **抓取**:Requests + BeautifulSoup4 - **存储**:本地 JSON(无外部数据库) - **模块化结构**: - `DetectorURLs`:负责验证和修正报纸的 URL。 - `GestorDatos`:加载、保存和处理事件。 - `ExtractorNoticias`:通过 User‑Agent 轮换和智能分页执行抓取。 - **终端颜色**:使用 ANSI 代码提供出色的视觉体验。 ## 📥 安装与使用 ### 要求 - Python 3.8 或更高版本。 - pip(Python 包管理器)。 ### 手动安装 ``` git clone https://github.com/Condor2026/Diabolic_Canarias cd Diabolic_Canarias pip install -r requirements.txt python Diabolic_Canarias.py ``` ### 自动安装(Termux / Linux) ``` chmod +x install.sh ./install.sh ``` ### 运行 启动时,将显示一个信息横幅并提示选择: - **1** → 终端模式(10 个命令)。 - **2** → Web 模式(服务器位于 `http://localhost:5015`)。 ## 🖥️ 终端模式(10 个命令) 进入主菜单后,你可以执行以下选项: | 命令 | 功能 | |---------|---------| | `[1]` | 🔍 搜索新闻(带有自动 URL 检测) | | `[2]` | 📊 查看完整分析(趋势、分布) | | `[3]` | 🔗 查看事件之间的关联(模式和团伙) | | `[4]` | 📈 查看每月演变趋势 | | `[5]` | 🌐 启动 Web 服务器 | | `[6]` | 📰 查看最近 20 起事件 | | `[7]` | 📥 导出数据(JSON/CSV) | | `[8]` | 🔍 验证报纸(自动 URL 检测器) | | `[9]` | 📊 按类型查看分布(带有 ASCII 图表) | | `[10]` | 🗑️ 退出 | 每个选项都与本地数据进行交互,让你无需打开浏览器即可探索模式。 ## 🌐 交互式 Web 模式 在启动时选择选项 `[2]`,将启动一个本地 Flask 服务器。你可以通过浏览器进行以下操作: - 查看全局统计数据(总数、过去 7/30/90 天)。 - 按时间段过滤。 - 查看按岛屿和类型分布的事件柱状图。 - 查询最近 20 起事件的列表。 - 直接从网页更新数据库(点击 **ACTUALIZAR** 按钮)。 - 导出为 JSON 或 CSV。 该界面已针对移动设备和桌面设备进行了优化。 ## 🗺️ 监控来源 该工具包含来自所有岛屿的数字报纸,其中包括: - **特内里费岛**:Diario de Avisos, El Día, El Español – Canarias, Canarias7, La Opinión de Tenerife, El Periódico de Tenerife 等。 - **大加那利岛**:Canarias7(大加那利岛版)、La Provincia、InfoNorte Digital、El Periódico de Gran Canaria。 - **兰萨罗特岛**:Diario de Lanzarote、Lancelot Digital、La Voz de Lanzarote。 - **富埃特文图拉岛**:Diario de Fuerteventura、Fuerteventura Digital、Noticias Fuerteventura。 - **拉帕尔马岛**:El Time、La Palma Ahora、El Apurón。 - **拉戈梅拉岛**:La Voz de La Gomera、Gomera Noticias。 - **耶罗岛**:El Hierro Digital、El Periódico de El Hierro。 自动 URL 检测器负责修正地址中的更改。完整列表可以在代码的 `PERIODICOS_BASE` 文件中查看和扩展。 ## 🏝️ 覆盖岛屿 - 特内里费岛 (Tenerife) - 大加那利岛 (Gran Canaria) - 兰萨罗特岛 (Lanzarote) - 富埃特文图拉岛 (Fuerteventura) - 拉帕尔马岛 (La Palma) - 拉戈梅拉岛 (La Gomera) - 耶罗岛 (El Hierro) ## 🧠 OSINT 类型与方法论 DIABOLIC 被归类为**被动与分析型 OSINT**: - **被动**:因为它对报纸系统的操作不会超出普通用户的 HTTP 请求范围。它不执行注入、不破坏访问权限、不使用凭证。 - **分析型**:因为它不仅限于收集信息;它还会处理数据以提取**地理模式(岛屿)、时间模式(每日、每月的演变)和关系模式(事件之间的关联)**。 ### 工作流程 1. **获取**:在遵守等待时间和 user-agent 的前提下,下载每份报纸的事件页面。 2. **解析**:提取标题、日期,并通过关键词匹配检测位置(岛屿)。 3. **分类**:根据关键词为每个事件标记犯罪类型。 4. **存储**:将元数据保存在本地 JSON 文件中,不包含个人数据。 5. **分析**:生成统计数据、时间模式和关联。 6. **可视化**:在终端或网页上展示结果。 ### 关联检测(选项 3) - 将过去 30 天内的事件按 **类型 + 岛屿** 分组。 - 如果在同一岛屿上有 **3 起或更多** 同类型的案件,它会将其作为一种模式显示并计算频率(事件/天)。 - 搜索作案手法的特定关键词(`alunicero`、`butrón`、`escalo` 等),并将共享相同手法的事件进行分组,从而推测可能的团伙。 ## ⚖️ 道德、法律与数据保护 ### 法规遵从 - **GDPR / LOPDGDD(西班牙数据保护法)**:DIABOLIC 不处理个人数据。它仅存储元数据(标题、日期、岛屿、类型、来源)。因此,它不在这些法律的适用范围内。 - **知识产权**:它不完整转载新闻内容;仅提取标题和元数据。发出的请求与人类读者相同,并尊重 `robots.txt` 和速率限制。 ### 道德原则 - **透明度**:开源代码,任何人都可以审计它的操作和存储内容。 - **不进行监视**:不对个人进行侧写,也不存储可能识别个人身份的信息。 - **责任**:用户对工具的使用方式负全部责任。启动横幅包含警告和“蜘蛛侠”理念(即:能力越大,责任越大)。 ### 免责声明 本工具按“原样”提供,不保证不间断运行。任何引入有害功能(收集个人数据、暗中监视)的修改均由修改者承担全部责任。 ## 📜 许可证 本项目基于 **GNU General Public License v3.0 (GPLv3)** 许可证。 这意味着: - 你可以自由地使用、研究、分享和修改该软件。 - 如果你分发修改后的版本,**必须使用相同的许可证**。 - **你不能将该软件变成闭源专有软件**;任何衍生作品都必须保持开源。 - 本软件按“原样”提供,不提供任何保证(查看 [`LICENSE`](LICENSE) 文件了解更多详情)。 请查看 `LICENSE` 文件获取完整的许可证文本。 ⭐ **如果 DIABOLIC 对你有帮助,请考虑在仓库中留下 Star 并分享该项目。让我们共同让 OSINT 变得更符合道德且触手可及!**
标签:ESC4, FOFA, OSINT, Python, 代码示例, 字符串匹配, 数据分析, 新闻监控, 无后门, 犯罪分析, 逆向工具