feat: 添加B站登录配置支持和视频笔记
- bilibili_extractor.py: 添加SESSDATA登录凭证支持 - 新增 bilibili_config.example 配置模板 - 更新 .gitignore: 排除虚拟环境和敏感配置文件 - 添加今日记忆 (2026-02-07.md) - 新增B站视频笔记: Qwen3-TTS上新、时代真变了、用了几天Clawdbot
This commit is contained in:
@@ -2,6 +2,11 @@
|
|||||||
*_venv/
|
*_venv/
|
||||||
venv/
|
venv/
|
||||||
bilibili_venv/
|
bilibili_venv/
|
||||||
|
.venv/
|
||||||
|
skills/obsidian-kb/.venv/
|
||||||
|
|
||||||
|
# B站登录配置
|
||||||
|
bilibili_config.py
|
||||||
|
|
||||||
# Python缓存
|
# Python缓存
|
||||||
__pycache__/
|
__pycache__/
|
||||||
|
|||||||
@@ -0,0 +1,16 @@
|
|||||||
|
# B站登录配置
|
||||||
|
# 复制此文件为 bilibili_config.py 并填入你的 SESSDATA
|
||||||
|
|
||||||
|
# 从浏览器获取 SESSDATA 的步骤:
|
||||||
|
# 1. 打开浏览器,登录 B站
|
||||||
|
# 2. 按 F12 打开开发者工具
|
||||||
|
# 3. 进入 Network(网络)标签
|
||||||
|
# 4. 刷新页面,随便点一个请求
|
||||||
|
# 5. 找到 Request Headers 里的 Cookie
|
||||||
|
# 6. 复制 SESSDATA=xxxxxxxxx 这段(包括 SESSDATA=)
|
||||||
|
|
||||||
|
# 填入你的 SESSDATA(不要提交到 Git!)
|
||||||
|
SESSDATA = "your_sessdata_here"
|
||||||
|
|
||||||
|
# 或者设置为 None 表示不登录
|
||||||
|
# SESSDATA = None
|
||||||
+35
-4
@@ -21,6 +21,7 @@ playwright install chromium
|
|||||||
import asyncio
|
import asyncio
|
||||||
import json
|
import json
|
||||||
import re
|
import re
|
||||||
|
import importlib.util
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
@@ -32,8 +33,9 @@ from undetected_playwright import stealth_async
|
|||||||
class BilibiliExtractor:
|
class BilibiliExtractor:
|
||||||
"""B站视频信息提取器"""
|
"""B站视频信息提取器"""
|
||||||
|
|
||||||
def __init__(self, headless=False):
|
def __init__(self, headless=False, sessdata=None):
|
||||||
self.headless = headless
|
self.headless = headless
|
||||||
|
self.sessdata = sessdata # B站登录凭证
|
||||||
self.playwright = None
|
self.playwright = None
|
||||||
self.browser = None
|
self.browser = None
|
||||||
self.context = None
|
self.context = None
|
||||||
@@ -67,6 +69,20 @@ class BilibiliExtractor:
|
|||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# 如果提供了 SESSDATA,添加到 Cookie
|
||||||
|
if self.sessdata:
|
||||||
|
await self.context.add_cookies([
|
||||||
|
{
|
||||||
|
'name': 'SESSDATA',
|
||||||
|
'value': self.sessdata,
|
||||||
|
'domain': '.bilibili.com',
|
||||||
|
'path': '/',
|
||||||
|
'httpOnly': True,
|
||||||
|
'secure': True,
|
||||||
|
}
|
||||||
|
])
|
||||||
|
print("✓ 已加载登录凭证 (SESSDATA)")
|
||||||
|
|
||||||
# 应用stealth模式(反检测)
|
# 应用stealth模式(反检测)
|
||||||
await stealth_async(self.context)
|
await stealth_async(self.context)
|
||||||
|
|
||||||
@@ -522,12 +538,27 @@ class BilibiliExtractor:
|
|||||||
|
|
||||||
async def main():
|
async def main():
|
||||||
"""主函数"""
|
"""主函数"""
|
||||||
bvid = "BV11t64BJEDZ"
|
bvid = "BV1MnFNz5EDL"
|
||||||
output_file = "/home/admin/.openclaw/workspace/notes/时代真变了glm4.7+playwright-cli-AI自主进行自动化测试.md"
|
output_file = "/home/admin/.openclaw/workspace/notes/用了几天_Clawdbot_我最担心的事开始发生了.md"
|
||||||
|
|
||||||
|
# 尝试加载登录配置
|
||||||
|
sessdata = None
|
||||||
|
try:
|
||||||
|
import sys
|
||||||
|
config_path = Path(__file__).parent / 'bilibili_config.py'
|
||||||
|
if config_path.exists():
|
||||||
|
spec = importlib.util.spec_from_file_location("bilibili_config", config_path)
|
||||||
|
bilibili_config = importlib.util.module_from_spec(spec)
|
||||||
|
spec.loader.exec_module(bilibili_config)
|
||||||
|
sessdata = getattr(bilibili_config, 'SESSDATA', None)
|
||||||
|
if sessdata:
|
||||||
|
print("✓ 已加载登录配置")
|
||||||
|
except Exception as e:
|
||||||
|
print(f"⚠️ 加载登录配置失败: {e}")
|
||||||
|
|
||||||
# 创建提取器(True=无头模式,False=显示浏览器窗口)
|
# 创建提取器(True=无头模式,False=显示浏览器窗口)
|
||||||
# 无头模式更快,但如果遇到验证码可能无法处理
|
# 无头模式更快,但如果遇到验证码可能无法处理
|
||||||
extractor = BilibiliExtractor(headless=True)
|
extractor = BilibiliExtractor(headless=True, sessdata=sessdata)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
await extractor.init_browser()
|
await extractor.init_browser()
|
||||||
|
|||||||
@@ -0,0 +1,23 @@
|
|||||||
|
# 2026-02-07
|
||||||
|
|
||||||
|
## 待办事项
|
||||||
|
|
||||||
|
### 配置B站登录信息
|
||||||
|
- [x] 了解配置方法(获取SESSDATA、修改代码)
|
||||||
|
- [ ] 获取SESSDATA(按F12 → Network → 复制Cookie中的SESSDATA)
|
||||||
|
- [ ] 创建配置文件:`cp bilibili_config.example bilibili_config.py`
|
||||||
|
- [ ] 编辑配置文件:填入SESSDATA
|
||||||
|
- [ ] 测试字幕提取功能
|
||||||
|
|
||||||
|
## B站视频提取
|
||||||
|
|
||||||
|
### 已处理视频
|
||||||
|
1. **BV1bSBMBvENj** - Qwen3-TTS上新,支持跨物种克隆音色!
|
||||||
|
- UP主:通义大模型
|
||||||
|
- 播放量:58,106
|
||||||
|
- 笔记已保存:`notes/b站笔记_BV1bSBMBvENj.md`
|
||||||
|
- ⚠️ 字幕提取失败(需要登录)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
**笔记生成时间:2026-02-07 14:15**
|
||||||
@@ -0,0 +1,59 @@
|
|||||||
|
# B站视频笔记
|
||||||
|
|
||||||
|
## 视频基本信息
|
||||||
|
|
||||||
|
**标题**: Qwen3-TTS上新,支持跨物种克隆音色!
|
||||||
|
|
||||||
|
**UP主**: 通义大模型 (ID: 3546585589877706)
|
||||||
|
|
||||||
|
**视频ID**: BV1bSBMBvENj
|
||||||
|
|
||||||
|
**时长**: 3分19秒
|
||||||
|
|
||||||
|
**发布时间**: 2025-12-23 21:33:06
|
||||||
|
|
||||||
|
**视频链接**: https://www.bilibili.com/video/BV1bSBMBvENj
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 视频简介
|
||||||
|
|
||||||
|
Qwen3-TTS 重磅上新:VoiceDesign & VoiceClone!
|
||||||
|
🎙️ 更快的速度,更强的表现力,重新定义语音合成。
|
||||||
|
✨ VoiceDesign (VD-Flash):
|
||||||
|
全文本控制: 通过文字指令调整语气、节奏和情感,拒绝千篇一律的预设音色。
|
||||||
|
性能卓越: Role-play 表现超越 GPT-4o-mini & Gemini-2.5-pro。
|
||||||
|
⚡ VoiceClone (VC-Flash):
|
||||||
|
极速复刻: 仅需 3 秒音频即可克隆任意声音。
|
||||||
|
多语种支持: 支持中英日等 10 种语言,多语言准确率优于 ElevenLabs。
|
||||||
|
立即体验 👉阿里云百炼
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 统计数据
|
||||||
|
|
||||||
|
| 指标 | 数值 |
|
||||||
|
|------|------|
|
||||||
|
| 播放量 | 58,106 |
|
||||||
|
| 点赞 | 2,053 |
|
||||||
|
| 投币 | 265 |
|
||||||
|
| 收藏 | 2,087 |
|
||||||
|
| 分享 | 571 |
|
||||||
|
| 弹幕 | 100 |
|
||||||
|
| 评论 | 288 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 字幕
|
||||||
|
|
||||||
|
> 注意: 由于B站限制,需要登录凭据才能获取字幕。当前未获取到字幕内容。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 笔记生成时间
|
||||||
|
|
||||||
|
2026-02-07 13:26:36
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*本笔记由 bilibili_extractor 自动生成*
|
||||||
@@ -0,0 +1,32 @@
|
|||||||
|
# 【老戴】用了几天 Clawdbot,我最担心的事开始发生了
|
||||||
|
**视频链接**: https://www.bilibili.com/video/BV1MnFNz5EDL
|
||||||
|
---
|
||||||
|
|
||||||
|
## 基本信息
|
||||||
|
|
||||||
|
- **标题**: 【老戴】用了几天 Clawdbot,我最担心的事开始发生了
|
||||||
|
- **UP主**: 老戴Donald
|
||||||
|
- **BV号**: BV1MnFNz5EDL
|
||||||
|
- **时长**: 12:38
|
||||||
|
- **发布时间**: 2026-02-02 17:49:13
|
||||||
|
|
||||||
|
## 数据统计
|
||||||
|
|
||||||
|
- **播放量**: 58,530
|
||||||
|
- **点赞**: 3,270
|
||||||
|
- **投币**: 2,344
|
||||||
|
- **收藏**: 1,680
|
||||||
|
- **分享**: 580
|
||||||
|
- **弹幕**: 480
|
||||||
|
- **评论**: 500
|
||||||
|
|
||||||
|
## 简介
|
||||||
|
|
||||||
|
用了几天 Clawdbot——是的,它很不稳定,很不成熟,很糙。
|
||||||
|
我关注的并不是它能干多少事,而是:
|
||||||
|
当未来 AI 的能力和资源不可避免地走向集中,
|
||||||
|
数据的主权,还会不会掌握在大众手里。
|
||||||
|
如果垄断不可避免,开源可能就是最后的防线。
|
||||||
|
|
||||||
|
---
|
||||||
|
*笔记生成时间: 2026-02-07 09:58:39*
|
||||||
Reference in New Issue
Block a user