論文B站上傳器
使用最終打包的命令列工具:
python <SKILLS_DIR>/paper-bilibili-uploader/scripts/upload.py "<PAPER_DIR>" --dry-run
(此腳本依賴 biliup、psutil 和 requests—請參閱技能目錄中的 pyproject.toml;請在該目錄中執行 uv sync,或若匯入失敗,請在當前直譯器中安裝這些套件。)
只有在審閱已解析的元件、中繼資料、封面和發布時間後,才移除 --dry-run。
必要的一般模式目錄結構
<PAPER_DIR>/video/
*_narrated.mp4
*_portrait_narrated.mp4
cover.png
video_meta.json
兩個 MP4 檔案必須非空。命令列工具會確定性地先上傳所有橫向影片,再上傳所有直向影片:P1 橫向,然後 P2 直向。缺少或空的橫向、直向、封面或中繼資料檔案將導致上傳失敗。
封面政策(需要海報成品;上傳首頁截圖作為封面)
實驗室調研(課題組)目錄——透過論文根目錄中的 poster_data.json 偵測
——仍然需要論文影片封面海報成品:
<PAPER_DIR>/poster/poster.png 必須存在(缺少此檔案將導致上傳失敗,並附上生成提示)。然而,上傳封面預設使用投影片的首頁截圖:若 video_meta.json 中有明確的 cover_path,則採用該路徑;否則使用 video/cover.png(由影片管道從標題頁渲染生成)——海報不會覆蓋首頁截圖。所有其他論文(論文分享等)保留一般封面合約——明確的 cover_path → video/cover.png——且目錄中的 poster/poster.png 會被忽略。系列模式(--series)會完全跳過實驗室/海報檢查。
若實驗室影片已以錯誤封面上傳,請無需重新上傳進行修正:upload.py --edit --vid <BV> --cover <video/cover.png>——成員封面端點會上傳圖片,編輯動作會直接提交該 URL(移除 scheme 會導致編輯失敗,錯誤訊息為 封面必須由頁面進行上傳,不支持外部鏈接)。影片在上傳後短時間內會處於審核狀態;一旦解鎖(狀態 0),編輯即可成功,否則請輪詢並重試。
使用保留的管理工作流程在 ~/.omp/agent/managed-skills/rednote-video-uploader/scripts/portrait_video.py 生成直向成品(請根據您代理的管理技能目錄進行調整)。
中繼資料合約
video/video_meta.json 必須使用 Bilibili 的單數 tag 鍵:
{"title":"【場地年份】論文 — 中文亮點","tag":["論文分享","機器人"],"tid":231,"copyright":1,"desc":"【論文資訊】...","cover_path":"cover.png"}
驗證要求:title 為非空字串;tag 為非空字串的非空陣列;tid 為正整數;copyright 必須為 1 或 2;當 copyright 為 2 時,需要非空的 source。cover_path 必須指向一個非空檔案。請勿將 tag 重新命名為 tags;tags 屬於小紅書中繼資料。
乾執行邊界
--dry-run 會執行輸入解析、P1/P2 排序、中繼資料修補、發布排程、驗證以及完整的命令建構。它在任何 biliup 子程序啟動前返回,且絕不會寫入上傳回執。
CST 排程
- 00:00–22:59 立即發布,除非中繼資料或
--dtime提供了延遲時間。 - 23:00–23:59 若未提供延遲時間,則排程至次日 07:00。
- 明確的
--dtime始終優先;它接受 CST 格式的YYYY-MM-DD HH:MM或十位數的 Unix 時間戳。
上傳回執
真正的上傳成功僅在 biliup 返回零退出碼並提供 BV 識別碼時發生。命令列工具會將 status、bv、url 和 ISO-8601 格式的 uploaded_at 欄位準確寫入 video/upload_result.json。若退出碼為零但無 BV 識別碼,則視為失敗且不會寫入回執。
系列模式
將排序好的 P1–PN 橫向影片、cover.png 和 video_meta.json 放入 <PAPER_DIR>/bilibili-series/video/,然後加上 --series。系列模式會保留檔案名稱順序,且不要求直向部分。
登入與診斷
使用相同的命令列工具加上 --login、--diagnose 或 --kill-all。Cookie 存放在 %USERPROFILE%/.bilibili/cookies.json。診斷功能使用 psutil 進行程序/開啟檔案檢查,不依賴 WMIC 或 fsutil,且能容許未設定的 LOCALAPPDATA。
相關技能
- skill://paper-video-cover
- skill://rednote-video-uploader
- skill://awesome-embodied-batch-pipeline
- skill://bilibili-edit-while-in-review
- skill://blog-to-bilibili
- skill://lab-survey-to-bilibili-runbook