Skip to content

weiwei6767/mops-downloader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MOPS 合併財報下載器

License: MIT Python 3.10+

從台灣公開資訊觀測站 (MOPS) 抓取指定上市櫃公司的四大合併財務報表,輸出 .txt (Tab 分隔) 和 .xlsx 兩種格式。

GitHub: https://github.com/weiwei6767/mops-downloader

抓取內容

每季同時下載以下 4 份合併報表:

  1. 合併資產負債表
  2. 合併綜合損益表
  3. 合併權益變動表
  4. 合併現金流量表

系統需求

  • Python 3.10 以上
  • 網路連線(會連到 mopsov.twse.com.tw

安裝步驟

# 0. 從 GitHub 取得程式碼 (擇一)
# 方法 A:git clone
git clone https://github.com/weiwei6767/mops-downloader.git
cd mops-downloader

# 方法 B:直接下載 zip
#   到 https://github.com/weiwei6767/mops-downloader
#   點綠色「Code」→「Download ZIP」,解壓縮後 cd 進去

# 1. (建議) 建立虛擬環境
python -m venv .venv

# Windows 啟動虛擬環境
.venv\Scripts\activate
# macOS / Linux 啟動虛擬環境
source .venv/bin/activate

# 2. 安裝套件
pip install -r requirements.txt

執行

python mops_downloader.py

執行後依序輸入:

提示 範例 說明
股票代號 2330 上市櫃公司代號
年度 2024113 西元或民國年都可,會自動換算
季別 41,2,3,4 單季或多季用逗號分隔

輸出位置

腳本會自動偵測桌面位置(支援中文/英文 Windows、有/無 OneDrive、macOS、Linux),並建立:

桌面/mops_reports/<股票代號>_民國<年>/
    ├─ 2330_民國113Q4_合併資產負債表.txt
    ├─ 2330_民國113Q4_合併資產負債表.xlsx
    ├─ 2330_民國113Q4_合併綜合損益表.txt
    ├─ 2330_民國113Q4_合併綜合損益表.xlsx
    └─ ...

若找不到桌面會 fallback 到家目錄。

注意事項

  • 公告時程:最新一季財報需等公司公告後才能抓到,否則會顯示「查無資料」並跳過。各季公告期限:Q1=5/15、Q2=8/14、Q3=11/14、Q4=隔年 3/31。
  • 下載間隔:每份報表之間有 1.2 秒延遲,避免對 MOPS 伺服器造成負擔。
  • 編碼:輸出的 .txt 為 UTF-8 with BOM,Excel 雙擊可直接開啟不亂碼。
  • 多層表頭:MOPS 報表有多層表頭,腳本會自動攤平成 主標 / 子標 / 欄名 的形式。

常見問題

Q: 執行時顯示「缺少必要套件」? A: 沒裝 requirements,請執行 pip install -r requirements.txt

Q: 顯示「查無資料」? A: 該公司該季尚未公告,或公司代號錯誤。可至 MOPS 網站 確認。

Q: Excel 開啟 .txt 中文變亂碼? A: 不要直接雙擊 .txt 開到 Excel,請改用 .xlsx 那個檔,或在 Excel 用「資料 → 從文字/CSV」匯入並選 UTF-8。

資料來源

公開資訊觀測站 MOPS:https://mops.twse.com.tw/mops/#/web/home

僅供個人學習研究使用,請勿用於商業用途或對伺服器造成大量請求。

授權

本專案採用 MIT License,可自由使用、修改、散布。

About

從台灣公開資訊觀測站 (MOPS) 抓取上市櫃公司四大合併財報,輸出 txt + xlsx

Topics

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages