# bili_get_dynamic **Repository Path**: rabbitTang_admin/bili_get_dynamic ## Basic Information - **Project Name**: bili_get_dynamic - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-06-26 - **Last Updated**: 2026-07-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Bilibili 动态追踪器 这是一个用于追踪指定Bilibili用户最新动态与视频的Python脚本集。它能够获取用户的动态信息和发布的视频,将其格式化为Markdown文件,并支持将动态中的图片和视频下载到本地,以便离线查看或用于其他目的。 ## ✨ 功能特性 - **动态追踪**:定期检查指定B站UP主的最新动态。 - **视频下载**:获取并下载指定用户发布的所有视频。 - **Markdown生成**:将获取到的动态自动转换为格式清晰的Markdown文件。 - **多种动态报告**: - `latest_dynamic.md`:只包含最新的一条动态,不下载图片,方便快速预览。 - `最近35条动态.md`:包含最新的35条动态,并下载所有相关图片。 - `最近150条动态.md`:包含最新的150条动态,并下载所有相关图片,提供更完整的历史记录。 - **本地图片缓存**:自动将动态中的图片下载到本地 `dynamic_images` 目录,并在Markdown文件中使用相对路径引用,实现完全离线化查看。 - **Web目录同步**:自动将 `latest_dynamic.md` 文件复制到上级目录的 `public` 文件夹,方便与Web服务集成。 - **灵活配置**:通过 `bilibili_tracker.conf` 文件轻松配置要监控的用户UID、你的SESSDATA以及检查更新的频率。 - **后台运行**:提供了 `run.bat` (Windows) 和 `run.sh` (Linux/macOS) 脚本,支持在后台启动、停止和重启追踪器。 ## 📂 文件结构 ``` .bili_get_dynamic/ ├── bilibili_tracker.py # 动态追踪脚本 ├── bilibili_video.py # 视频下载脚本 ├── bilibili_tracker.conf # 配置文件 (首次运行后自动生成) ├── bilibili_tracker.conf.example # 配置文件示例 ├── requirements.txt # Python 依赖库 ├── run.bat # Windows 启动脚本 ├── run.sh # Linux/macOS 启动脚本 ├── dynamic_images/ # 下载的图片存储目录 ├── video/ # 下载的视频存储目录 ├── latest_dynamic.md # 输出:最新一条动态 ├── 最近35条动态.md # 输出:最近35条动态 ├── 最近150条动态.md # 输出:最近150条动态 └── bilibili_tracker.log # 运行日志 ``` ## 🚀 安装与配置 ### 1. 安装依赖 首先,请确保你已经安装了 Python 3。然后,在项目根目录下打开终端,运行以下命令来安装所需的库: ```bash pip install -r requirements.txt ``` ### 2. 获取 SESSDATA `SESSDATA` 是您登录B站后浏览器Cookie中的一个关键值,脚本需要它来验证您的身份以获取动态。 1. 在浏览器中登录 [Bilibili](https://www.bilibili.com/)。 2. 按 `F12` 打开开发者工具。 3. 切换到 **“应用” (Application)** 或 **“存储” (Storage)** 标签页。 4. 在左侧菜单中找到 **“Cookie”**,然后点击 `https://www.bilibili.com`。 5. 在右侧的Cookie列表中找到名为 `SESSDATA` 的条目,并复制其值。 **注意:** `SESSDATA` 包含敏感信息,请妥善保管,不要泄露给他人。 ### 3. 配置脚本 1. 首次运行脚本 `python bilibili_tracker.py`,程序会自动创建一个名为 `bilibili_tracker.conf` 的配置文件。 2. 打开 `bilibili_tracker.conf` 文件,你会看到如下内容: ```ini [Bilibili] UID = 23732204 SESSDATA = 请在这里填入你的SESSDATA CheckIntervalSeconds = 300 ``` 3. **修改配置**: - `UID`: 将 `23732204` 替换成你想要监控的B站用户的UID。 - `SESSDATA`: 将 `请在这里填入你的SESSDATA` 替换成你刚刚获取到的 `SESSDATA` 值。 - `CheckIntervalSeconds`: (可选)检查更新的间隔时间,单位为秒,默认为300秒(5分钟)。 ## 🛠️ 使用方法 ### Bilibili 动态追踪器 (bilibili_tracker.py) 你有两种方式来运行此脚本: ### 方法一:直接运行 (前台模式) 这种方式会在当前终端窗口中运行,关闭终端后程序会停止。 ```bash python bilibili_tracker.py ``` 你也可以通过命令行参数临时指定一个UID,这将覆盖配置文件中的UID: ```bash python bilibili_tracker.py --uid 12345678 ``` ### 方法二:使用启动脚本 (后台模式) 为了让脚本在后台持续运行,我们提供了便捷的启动脚本。 **在 Windows 上:** - **启动:** ```batch run.bat start ``` - **停止:** ```batch run.bat stop ``` - **重启:** ```batch run.bat restart ``` - **查看状态:** ```batch run.bat status ``` **在 Linux 或 macOS 上:** - **启动:** ```bash bash run.sh start ``` - **停止:** ```bash bash run.sh stop ``` - **重启:** ```bash bash run.sh restart ``` - **查看状态:** ```bash bash run.sh status ``` ### Bilibili 视频下载器 (bilibili_video.py) 此脚本用于下载指定用户的所有视频。 **直接运行:** ```bash python bilibili_video.py ``` 脚本会读取 `bilibili_tracker.conf` 中的 `UID` 和 `SESSDATA` 配置,然后开始获取视频列表并下载到 `video` 目录中。 ## 📄 输出文件说明 脚本运行后,会在项目目录下生成以下文件: - `latest_dynamic.md`: 最新的一条动态,纯文本,不包含本地图片。 - `最近35条动态.md`: 最新的35条动态,包含本地图片链接。 - `最近150条动态.md`: 最新的150条动态,包含本地图片链接。 - `dynamic_images/`: 存放所有下载的图片,按动态ID分子目录存放。 - `video/`: 存放所有下载的视频。 - `bilibili_tracker.log`: 记录程序的运行情况和错误信息,方便排查问题。