butubb
4e60524f37
feat: 监控面板 / 登录鉴权 / 多平台切换 / MySQL
...
Deploy VitePress site to Pages / build (push) Canceled after 0s
Deploy VitePress site to Pages / Deploy (push) Canceled after 0s
在上游 MediaCrawler 之上新增一层:
- 监控层 api/monitor/ —— 多博主/多笔记的定时采集、指标快照差分、报表、
企业微信通知。每轮采集写入独立目录,差分才成立。
- WebUI 登录鉴权 api/auth.py —— PBKDF2 口令 + 服务端会话,/api 全接口防护。
WebSocket 单独加依赖:BaseHTTPMiddleware 对 ws 作用域直接放行,覆盖不到。
- 全局平台切换 + 能力矩阵 —— 如实区分「爬虫模块支持」与「监控层已接线」,
未接通的平台直接拒绝建任务,而不是静默跑空。
- 监控库改用 MySQL 5.7(可回退 SQLite 供测试):逐表强制 utf8mb4
(服务端与库默认都是 latin1),启动校验所连 schema 以防写错库,
连接池 recycle + pre_ping 应对 MySQL 的 8 小时空闲断连。
修复上游缺陷:
- xhs/core.py: 主页抓取失败会跳掉整个博主,导致一条作品都抓不到,
而那份资料只喂给一个空函数。改为尽力而为,失败不中断。
- xhs/login.py: cookie 登录只注入 web_session,冷启动签名会失败。
新增 INJECT_ALL_COOKIES 开关(默认关闭,原有行为不变)。
- requirements.txt: 补上 websockets。它在上游 pyproject.toml 里有声明、
这里漏了,导致 uvicorn 没有 WebSocket 能力,实时日志流从未工作。
改动过的上游文件清单及合并方式见 UPSTREAM.md。
测试:492 passed(另有 1 个既有的 Windows/gbk 上游测试失败,与本改动无关)
2026-10-07 09:58:40 +08:00
程序员阿江(Relakkes)
5d547f4586
update readme
2026-10-05 22:21:13 +08:00
程序员阿江(Relakkes)
83c638b9d1
docs: README 新增 OpenLux 赞助商,西语版补上 Atlas Cloud
2026-10-04 22:58:52 +08:00
程序员阿江(Relakkes)
60e66f2a92
docs: update README.md
2026-09-15 16:15:03 +08:00
程序员阿江(Relakkes)
d6f7c5bb90
docs: update README.md
2026-08-14 16:18:52 +08:00
程序员阿江(Relakkes)
5665a271ef
docs: update README
2026-08-12 19:22:18 +08:00
程序员阿江(Relakkes)
439509782c
update readme
2026-08-11 18:26:17 +08:00
程序员阿江(Relakkes)
e6e863a1d3
docs: update README.md
2026-07-25 00:03:17 +08:00
程序员阿江(Relakkes)
0625e01a6b
docs: 更新赞助商展示
2026-07-16 16:17:35 +08:00
程序员阿江(Relakkes)
8b4d8fcffa
docs: 添加 BrowserAct 白金赞助商
2026-07-01 13:05:05 +08:00
程序员阿江(Relakkes)
e5ceb08ed4
docs: 添加 Atlas Cloud 赞助商
2026-06-12 20:13:12 +08:00
程序员阿江(Relakkes)
1572b64334
docs: 展示 LegionProxy 赞助商
...
在中英文 README 的现有赞助商区域补充 LegionProxy,使用压缩后的本地 banner,避免 README 依赖外部图片热链。
Constraint: 赞助商图片来自本地提供的 Canva banner,需要控制仓库体积和 README 展示尺寸
Rejected: 直接提交原始 PNG | 2.6MB 体积过大,不适合作为 README 资源
Confidence: high
Scope-risk: narrow
Tested: 检查 README 引用路径和压缩后图片尺寸
Not-tested: 未进行 README 页面渲染截图验证
2026-04-25 22:00:43 +08:00
程序员阿江(Relakkes)
15a20a7983
docs: README 新增打赏作者区块
2026-04-16 14:01:41 +08:00
程序员阿江(Relakkes)
5294b6d9b7
feat: 支持连接用户已有的 Chrome 浏览器进行爬取
...
新增 CDP_CONNECT_EXISTING 配置项,默认开启,通过 Chrome 远程调试功能
(chrome://inspect/#remote-debugging) 直接连接用户正在使用的浏览器,
复用真实的 Cookie、扩展和浏览历史,大幅降低平台风控检测风险。
主要变更:
- 新增 _connect_existing_browser 方法,通过 ws:// 直接连接已有浏览器
- 支持等待用户在浏览器端确认连接对话框(60秒超时)
- cleanup 时不关闭用户的浏览器进程
- 修复小红书在真实浏览器下 cookie 过多导致签名失败的问题
- 更新 README、CDP使用指南和常见问题文档
2026-04-15 10:54:29 +08:00
程序员阿江(Relakkes)
e8b18683a0
update docs
2026-03-24 09:52:30 +08:00
程序员阿江(Relakkes)
0282e626c9
feat: 新增 JSONL 存储格式支持,默认存储格式改为 jsonl
...
JSONL(JSON Lines)每行一个 JSON 对象,采用 append 模式写入,
无需读取已有数据,大数据量下性能远优于 JSON 格式。
- 新增 AsyncFileWriter.write_to_jsonl() 核心方法
- 7 个平台新增 JsonlStoreImplement 类并注册到工厂
- 配置默认值从 json 改为 jsonl,CLI/API 枚举同步更新
- db_session.py 守卫条件加入 jsonl,避免误触 ValueError
- 词云生成支持读取 JSONL 文件,优先 jsonl 回退 json
- 原有 json 选项完全保留,向后兼容
- 更新相关文档和测试
2026-03-03 23:31:07 +08:00
程序员阿江(Relakkes)
be5b786a74
docs: update docs
2026-01-19 12:23:04 +08:00
Doiiars
70a6ca55bb
feat(database): add PostgreSQL support and fix Windows subprocess encoding
2026-01-09 00:41:59 +08:00
程序员阿江(Relakkes)
a47c119303
docs: update
2025-12-30 17:10:13 +08:00
程序员阿江(Relakkes)
1544d13dd5
docs: update README.md
2025-12-26 22:41:32 +08:00
程序员阿江(Relakkes)
4ceb94f9c8
docs: webui 支持文档
2025-12-19 00:15:53 +08:00
程序员阿江(Relakkes) and Claude Opus 4.5
a8930555ac
style: increase aside width and ad image size
...
- 增加右侧 aside 宽度从 256px 到 300px
- 增加广告图片宽度从 200px 到 280px
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <[email protected] >
2025-12-18 13:29:36 +08:00
程序员阿江(Relakkes) and Claude Opus 4.5
fb66ef016d
docs: add vitepress-plugin-mermaid for Mermaid diagram rendering
...
- 添加 vitepress-plugin-mermaid 和 mermaid 依赖
- 更新 VitePress 配置以支持 Mermaid 图表渲染
- 在 sidebar 中添加项目架构文档链接
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <[email protected] >
2025-12-18 13:25:21 +08:00
程序员阿江(Relakkes) and Claude Opus 4.5
26c511e35f
docs: add project architecture documentation with Mermaid diagrams
...
添加项目架构文档,包含:
- 系统架构总览图
- 数据流向图
- 爬虫基类体系和生命周期图
- 存储层架构图
- 代理、登录、缓存系统图
- 模块依赖关系图
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <[email protected] >
2025-12-18 13:16:32 +08:00
程序员阿江(Relakkes)
2426095123
docs: update README.md
2025-12-17 11:04:26 +08:00
程序员阿江(Relakkes)
3c75d4f1d0
docs: update docs style
2025-12-16 14:49:14 +08:00
程序员阿江(Relakkes)
332a07ce62
docs: update docs
2025-12-16 14:41:28 +08:00
程序员阿江(Relakkes)
f14242c239
docs: update data store
2025-11-28 22:21:20 +08:00
hsparks.codes
2bc9297812
docs: Move data storage section to separate guide
...
- Create comprehensive data storage guide (docs/data_storage_guide.md)
- Update README.md with link to storage guide instead of full details
- Update README_en.md with link to storage guide
- Bilingual guide (Chinese and English) in single document
- Includes all storage options: CSV, JSON, Excel, SQLite, MySQL
- Detailed usage examples and documentation links
This change improves README readability by moving detailed storage
information to a dedicated document while keeping main README concise.
2025-11-28 10:18:09 +01:00
hsparks.codes
46ef86ddef
feat: Add Excel export functionality and unit tests
...
Features:
- Excel export with formatted multi-sheet workbooks (Contents, Comments, Creators)
- Professional styling: blue headers, auto-width columns, borders, text wrapping
- Smart export: empty sheets automatically removed
- Support for all platforms (xhs, dy, ks, bili, wb, tieba, zhihu)
Testing:
- Added pytest framework with asyncio support
- Unit tests for Excel store functionality
- Unit tests for store factory pattern
- Shared fixtures for test data
- Test coverage for edge cases
Documentation:
- Comprehensive Excel export guide (docs/excel_export_guide.md)
- Updated README.md and README_en.md with Excel examples
- Updated config comments to include excel option
Dependencies:
- Added openpyxl>=3.1.2 for Excel support
- Added pytest>=7.4.0 and pytest-asyncio>=0.21.0 for testing
This contribution adds immediate value for users who need data analysis
capabilities and establishes a testing foundation for future development.
2025-11-28 04:44:12 +01:00
程序员阿江(Relakkes)
1da347cbf8
docs: update index.md
2025-11-22 09:12:25 +08:00
程序员阿江(Relakkes)
422cc92dd1
docs: update README
2025-11-22 08:20:09 +08:00
程序员阿江(Relakkes)
45ec4b433a
docs: update
2025-11-06 00:08:03 +08:00
程序员阿江(Relakkes)
3b6fae8a62
docs: update README.md
2025-10-17 15:30:44 +08:00
Callmeiks
e177f799df
docs: resize TikHub banner to smaller size
2025-10-16 01:51:55 -07:00
Callmeiks
2c9eec544d
docs: add TikHub as sponsor
2025-10-16 01:22:40 -07:00
程序员阿江(Relakkes)
d1f73e811c
docs: update README.md
2025-10-12 21:19:11 +08:00
程序员阿江(Relakkes)
3c5b9e8035
docs: update wechat qrcode
2025-10-02 14:27:10 +08:00
persist-1
d3bebd039e
refactor(database): 调整数据库模块位置、调整初始化arg名称,并更新文档
...
- 将 db.py 数据库模块移入‘database/‘中,并修正所有调用代码
- 将初始化参数 `--init-db` 改为 `--init_db`
- 更新相关文档说明
2025-09-08 01:14:31 +08:00
程序员阿江(Relakkes)
12450759d8
fix: httpx proxy format error
...
feat: add a ip proxy provider
2025-08-01 01:05:11 +08:00
程序员阿江(Relakkes)
417c39de69
docs: add a sponsor
2025-07-30 16:44:10 +08:00
程序员阿江(Relakkes)
b41896f4f3
docs: add a sponsor
2025-07-23 13:17:19 +08:00
买定不离手
36d4a086dd
docs: 在默认说明文档中加入SQLite支持说明\n\n- 更新 docs/index.md 文件,增加对SQLite数据库的支持说明\n- 添加SQLite使用示例和配置说明
2025-07-14 03:36:59 +08:00
程序员阿江(Relakkes)
dd8a3f5db8
docs: add a Sponsor
2025-07-12 23:26:30 +08:00
程序员阿江(Relakkes)
e83b2422d9
feat: 支持playwright通过cdp协议连接本地chrome浏览器
...
docs: 增加uv来管理python依赖的文档
2025-06-25 23:22:39 +08:00
Relakkes
fc45b22963
fix: vitepress path problem
2025-06-20 16:10:44 +08:00
Relakkes
22ec34dca3
docs: add list of sponsors
2025-06-20 16:04:04 +08:00
Relakkes
1e7b950d3e
Revert "chore: remove sponor"
...
This reverts commit 242c06c345 .
2025-05-26 22:35:18 +08:00
Relakkes
242c06c345
chore: remove sponor
2025-05-25 11:54:38 +08:00
Relakkes
cb2ae6cbab
docs: add sponsor
2025-04-16 16:49:49 +08:00