下載 arXiv 論文 TeX 原始碼 是做什麼的?
給定一個 arXiv 連結或裸 arXiv ID,從
https://arxiv.org/e-print/<id> 下載論文的 TeX 原始碼
並將其解壓縮以供下游管線使用。每當使用者提供 arXiv 連結且
應使用 TeX 原始碼(而非僅 PDF)來餵養管線時,這是必要的第一步驟 — TeX 原始碼能精確保留表格、
方程式和圖形,並跳過 MinerU。
使用時機
- 使用者以任何論文管線的輸入提供 arXiv 網址(
arxiv.org/abs/…、arxiv.org/pdf/…、arxiv.org/e-print/…、export.arxiv.org/…)或裸 ID(2509.07996、2509.07996v4)。 - 消費技能需要磁碟上的論文原始碼(
paper_src/),但僅有 arXiv 參考。
調用方式
uv run --no-project python \
"<SKILLS_DIR>/paper-download-arxiv-paper-source/scripts/download_source.py" \
"<arxiv-url|arxiv-id>" [--output DIR] [--force]
--output預設為工作階段當前工作目錄。--force即使存檔已存在也會重新下載。
輸出合約
在輸出目錄下:
arXiv-<id>.tar.gz— 下載的 e-print 存檔(gzip/tar)。paper_src/— 解壓縮的 TeX 原始碼(若存檔包裝在單一頂層目錄中則會扁平化;不安全的成員會被拒絕)。- 僅 PDF 的提交(arXiv 上無 TeX 原始碼):改為
arXiv-<id>.pdf。 - 單一檔案的 TeX 提交:改為
arXiv-<id>.tex。
成功時,標準輸出結尾會包含 TEX_SOURCES: <逗號分隔的相對路徑>
(或 PDF_ONLY: <絕對 PDF 路徑>)。請使用這些行 — 切勿猜測檔名。
冪等性
在相同輸出目錄中使用相同 ID 重新執行會跳過下載
(標準輸出以 SKIP 開頭),除非指定 --force;仍會驗證解壓縮。
失敗情況
非零退出碼加上 stderr 上的 ERROR: 訊息(解析失敗、網路失敗、
內容為空、意外負載、不安全的存檔成員、存檔中無 .tex 檔案)。
管線必須停止並回報 — 切勿靜默地回退到 PDF。
回退說明
若腳本回報 PDF_ONLY: <路徑>,表示該論文在 arXiv 上沒有 TeX 原始碼。
消費者隨後應使用該 PDF,並走 MinerU 路徑(例如 paper-to-beamer 階段 2 的
DECISION GATE),而非讀取 TeX。
被以下技能使用
paper-to-beamer階段 1(arXiv 連結/ID 輸入)paper-to-bilibili投影片模式(具有arxiv_id但無本地原始碼的條目)paper-venue-discovery步驟 1(僅提供連結時擷取原始碼)
相關技能
- skill://paper-to-beamer
- skill://paper-to-bilibili
- skill://paper-venue-discovery
- skill://paper-to-beamer-workflow
- skill://paper-bilibili-multi-part-series-upload
- skill://paper-bilibili-series-upload