在完成了前端圖表產出與 Discord 即時戰報推播後,專利機器人每天都會穩定產出資料。
一但幾天運行下來會發現一個問題,所有的 專利商業報表_YYYYMMDD.csv 與 專利監控情報儀表板_YYYYMMDD.html 都直接堆在專案根目錄下,時間一久,資料夾會變得非常凌亂,查找特定月份的資料極為不便。
因此為機器人加入「智慧歸檔機制」,自動依照年份與月份建立分類資料夾,讓產出的情報自動歸位!
一、 歸檔架構規劃
我們預期將報表自動分流至結構化的目錄中:
Reports/
└── 2026/
└── 09/
├── 專利商業報表_20260930.csv
└── 專利監控情報儀表板_20260930.html
二、 核心實作邏輯
在產出檔案前,只需透過兩行簡單的邏輯完成目錄檢查與路徑定義:
' 動態生成例如:"Reports\2026\09"
reportFolder = System.IO.Path.Combine("Reports", DateTime.Now.ToString("yyyy"), DateTime.Now.ToString("MM"))
' 若資料夾不存在則自動建立完整階層
If Not System.IO.Directory.Exists(reportFolder) Then
System.IO.Directory.CreateDirectory(reportFolder)
End If
csvFilePath = System.IO.Path.Combine(reportFolder, "專利商業報表_" + DateTime.Now.ToString("yyyyMMdd") + ".csv")
htmlFilePath = System.IO.Path.Combine(reportFolder, "專利監控情報儀表板_" + DateTime.Now.ToString("yyyyMMdd") + ".html")
三、 在 UiPath 中的極簡修改方式
不需要改動龐大的爬蟲流程,只要在執行 Write Business CSV Report 之前加入:
Assign:
reportFolder = System.IO.Path.Combine("Reports", DateTime.Now.ToString("yyyy"), DateTime.Now.ToString("MM"))
Invoke Method 或條件建立:
呼叫 System.IO.Directory.CreateDirectory(reportFolder)。
原本的 Assign: csvFilePath 與 Assign: htmlFilePath 前方加上 reportFolder 路徑結合即可
今日成果
執行流程後,專案目錄下會自動出現結構完整的 Reports/ 資料夾,檔案被妥善歸檔至當前年月子目錄中,同時 Discord 推播的檔案清單也會精準顯示其歸檔位置。