Skip to content

float001/NewSight

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,875 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NewSight

面向安全从业者的「本机实时漏洞/安全新闻监控」流水线:

  • 每小时抓取 RSS(Python)
  • 关键词 include/exclude(可选标题子串过滤)
  • 写入 Markdown
    • 今日content/today.md
    • 归档content/archive/YYYY/MM/YYYY-MM-DD.md
  • GitHub Pages 展示site/ 使用 Astro 构建静态站,Actions 部署 Pages

仓库结构

路径 作用
vulnwatch/ RSS 获取、去重、生成 Markdown
content/ 输出目录:today.mdarchive/
site/ Astro 前端站点:展示 today 与归档
config.yaml 配置(RSS/关键词/输出路径)
run-hourly.sh 单次运行脚本(适配 .env,可自动推送 content/ 到 GitHub)

安装(本机)

建议使用 venv(PEP 668 环境下必须):

python3 -m venv .venv
./.venv/bin/pip install -r requirements.txt

配置

编辑 config.yaml

  • rss:你的 RSS 列表或 OPML(必填,否则会生成空的 today.md
  • rss_config.timeout_s:单个 feed 拉取超时(秒)
  • rss_config.opml_timeout_s:OPML 拉取超时(秒)(GitHub raw 可能较慢)
  • rss_config.opml_retries:OPML 拉取失败重试次数
  • rss_config.opml_retry_backoff_s:OPML 重试退避时间(秒),每次重试会递增等待
  • keywords.fetch_within_hours:只处理“当前时间往前 N 小时”窗口内发布的资讯;但 today.md 会从 state.db 渲染当日全量
  • keywords.include / exclude:标题子串粗筛(include 为空表示不过滤)
  • log.level:日志级别(INFO 默认;排查问题可用 DEBUG
  • db_path:本地 SQLite(默认 state/state.db),用于当日全量累计与去重

环境变量(推荐写进 .envrun-hourly.sh 会自动加载):

NewSight_GITHUB_TOKEN="..."   # 可选:用于自动推送 content/ 到 GitHub

运行

单次运行:

./run-hourly.sh

运行后会生成/更新:

  • content/today.md
  • content/archive/YYYY/MM/YYYY-MM-DD.md

每小时定时(cron)

0 * * * * /path/to/repo/run-hourly.sh >> /path/to/repo/run.log 2>&1

GitHub Pages

  • 工作流:/.github/workflows/pages.yml
  • 前端:site/(Astro)

About

每日资讯,关注安全、AI、web3

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors