mirror of
https://github.com/DIYgod/RSSHub.git
synced 2026-09-24 23:12:34 +08:00
* feat(route/bilibili): add video-browser route using Puppeteer for video list extraction Replace broken real-browser API dependency with getPuppeteerPage + browserless to render Bilibili space pages and extract video data via DOM parsing. Includes username extraction from page title and cover image detection. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * fix(route/bilibili): fix video title extraction picking stats over actual titles The candidate selection logic was preferring longer text (e.g. "8.3万23907:45") over real titles (e.g. "爆肝三天,我总结了 GPT Image 2 全网最实用的玩法") because stats strings passed the hasTitle check. Now prefer candidates that contain Chinese characters and don't start with digits, falling back to longest hasTitle candidate. Fixes 11/35 UIDs returning empty results. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * feat(route/bilibili): add /user/video-browser route using Puppeteer + XHR interception Close #20406 Bilibili upgraded anti-crawler (WBI signing) on /x/space/wbi/arc/search in Nov 2025, causing existing /user/video/:uid to return 412. This new route bypasses it by intercepting the browser's own API response via Puppeteer, extracting structured JSON data (title, bvid, pic, created timestamp, author, play/comment counts) instead of fragile DOM scraping. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * feat(route/bilibili): fold browser mode into video route --------- Co-authored-by: gqy20 <qingyu_ge@foxmail.com> Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>