Files
hbr-crawler/待釐清問題.md
DonaldFang 方士碩 f524713cb6 Initial commit: HBR 文章爬蟲專案
- Scrapy 爬蟲框架,爬取 HBR 繁體中文文章
- Flask Web 應用程式,提供文章查詢介面
- SQL Server 資料庫整合
- 自動化排程與郵件通知功能

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-03 17:19:56 +08:00

240 lines
6.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# HBR 爬蟲系統 - 待釐清問題清單
請以選擇題方式回答以下問題,以便完成系統開發。
---
## 一、資料庫相關問題
### 1. 資料庫類型
您希望使用哪種資料庫系統?
- [V ] A. MySQL / MariaDB
- [ ] B. PostgreSQL
- [ ] C. SQLite
- [ ] D. Microsoft SQL Server
- [ ] E. 其他請說明___________
### 2. 資料庫連線方式
您希望如何提供資料庫連線資訊?
- [ ] A. 直接在此文件中提供(主機、埠號、資料庫名稱、使用者、密碼)
- [V ] B. 透過環境變數設定
- [ ] C. 使用連線字串Connection String
- [ ] D. 使用設定檔config.ini 或 config.json
- [ ] E. 其他方式請說明___________
### 3. 資料庫位置
資料庫位於何處?
- [ ] A. 本地電腦localhost
- [V ] B. 區域網路內的伺服器
- [ ] C. 雲端服務AWS RDS、Azure SQL、Google Cloud SQL 等)
- [ ] D. 其他請說明___________
### 4. 資料庫權限
資料庫使用者權限設定?
- [ ] A. 僅有 SELECT 和 INSERT 權限(建議)
- [V ] B. 完整權限SELECT, INSERT, UPDATE, DELETE, CREATE TABLE
- [ ] C. 需要我協助建立資料表結構
- [ ] D. 資料表已存在,只需插入資料
### 5. 資料庫連線加密
是否需要使用 SSL/TLS 加密連線?
- [V ] A. 是,需要 SSL/TLS 加密
- [ ] B. 否,不需要加密
- [ ] C. 不確定,使用預設設定
---
## 二、資料儲存相關問題
### 6. 重複文章處理
當爬取到已存在的文章(相同 URL應如何處理
- [ ] A. 跳過,不更新資料庫
- [V ] B. 更新現有記錄(更新 crawled_at 時間戳)
- [V ] C. 更新現有記錄,並更新所有欄位(標題、內容等可能變更)
- [ ] D. 建立新記錄(允許重複)
### 7. 歷史資料保留
是否需要保留歷史爬取記錄?
- [ ] A. 是,保留所有歷史記錄(每次爬取都記錄)
- [ ] B. 否,只保留最新一次爬取的資料
- [V ] C. 保留最近 N 次爬取記錄請指定次數__30___
### 8. 資料清理
是否需要定期清理舊資料?
- [V ] A. 是,自動刪除超過 N 天的資料請指定天數_30____
- [ ] B. 否,保留所有資料
- [ ] C. 手動清理
### 9. CSV 檔案處理
CSV 檔案產生後,是否需要額外處理?
- [ ] A. 僅發送郵件,不額外處理
- [ ] B. 發送郵件後刪除 CSV 檔案
- [V ] C. 保留 CSV 檔案作為備份(保留最近 N 個檔案請指定_____
- [ ] D. 上傳至雲端儲存Google Drive、Dropbox、S3 等)
---
## 三、功能擴展相關問題
### 10. 資料查詢功能
是否需要提供資料查詢功能?
- [ ] A. 否,僅需爬取和儲存功能
- [ ] B. 是,需要簡單的查詢腳本(按日期、分類、標籤查詢)
- [V ] C. 是,需要 Web 介面查詢
- [ ] D. 是,需要 API 介面
### 11. 通知方式
除了郵件通知,是否需要其他通知方式?
- [V ] A. 僅需郵件通知
- [ ] B. 需要 Slack 通知
- [ ] C. 需要 Microsoft Teams 通知
- [ ] D. 需要 LINE 通知
- [ ] E. 需要其他方式請說明___________
### 12. 資料分析功能
是否需要資料分析功能?
- [ ] A. 否,僅需儲存原始資料
- [V ] B. 是,需要統計功能(文章數量、分類分布、作者統計等)
- [ ] C. 是,需要產生報表(週報、月報)
- [ ] D. 是,需要視覺化圖表
### 13. 增量爬取
是否需要支援增量爬取(僅爬取新文章)?
- [V ] A. 是,僅爬取新文章(依據 URL 或發布日期判斷)
- [ ] B. 否,每次完整爬取所有文章
- [ ] C. 是,但需要可設定爬取日期範圍
---
## 四、系統設定相關問題
### 14. 爬取頻率
除了每週一 08:00是否需要其他爬取時間
- [ ] A. 僅每週一 08:00
- [ ] B. 需要多個排程時間請說明____每天早上8:00_______
- [ ] C. 需要手動觸發功能
- [V ] D. 需要可設定的排程時間
### 15. 錯誤通知
當爬蟲執行失敗時,是否需要通知?
- [ ] A. 否,僅記錄日誌
- [V ] B. 是,發送錯誤通知郵件
- [ ] C. 是發送錯誤通知到其他平台請指定___________
### 16. 日誌記錄
日誌記錄的需求?
- [ ] A. 僅記錄到控制台
- [ ] B. 記錄到檔案請指定路徑_____
- [V ] C. 記錄到資料庫
- [ ] D. 記錄到日誌服務(如 ELK、Splunk
### 17. 效能設定
爬取時的效能設定偏好?
- [ ] A. 快速爬取(較短延遲,可能對伺服器造成較大負擔)
- [ ] B. 平衡模式(適中延遲,預設 1 秒)
- [V ] C. 保守模式(較長延遲,避免對伺服器造成負擔)
- [ ] D. 可設定延遲時間請指定秒數_____
---
## 五、資料格式相關問題
### 18. 日期格式
資料庫中日期欄位的格式偏好?
- [V ] A. DATETIME / TIMESTAMP資料庫原生格式
- [ ] B. VARCHAR字串格式如 '2024-12-22 08:00:00'
- [ ] C. DATE僅日期不含時間
- [ ] D. 其他請說明___________
### 19. 標籤儲存方式
標籤的儲存方式偏好?
- [ ] A. 正規化設計tags 表 + article_tags 關聯表,建議)
- [V ] B. 非正規化設計articles 表中以逗號分隔字串儲存)
- [ ] C. JSON 格式儲存(如資料庫支援)
### 20. 內容欄位長度
文章內容欄位的長度限制?
- [V ] A. TEXT 類型(無長度限制)
- [ ] B. VARCHAR(N)請指定最大長度_____
- [ ] C. MEDIUMTEXT / LONGTEXT依資料庫而定
---
## 六、其他問題
### 21. 專案部署環境
系統將部署在何處?
- [ ] A. 本地電腦Windows
- [ ] B. 本地電腦Linux/Mac
- [ ] C. GitHub Actions雲端
- [V ] D. 自有伺服器
- [ ] E. 雲端服務AWS、Azure、GCP 等)
### 22. 資料備份需求
是否需要自動備份功能?
- [V ] A. 否,手動備份即可
- [ ] B. 是,定期自動備份資料庫
- [ ] C. 是,備份資料庫和 CSV 檔案
- [ ] D. 是,備份到雲端儲存
### 23. 多語言支援
是否需要支援多語言?
- [ ] A. 否,僅支援繁體中文
- [V ] B. 是需要支援多語言請指定語言_繁體中文/英文/韓文_________
### 24. 資料匯出格式
除了 CSV是否需要其他匯出格式
- [ ] A. 僅需 CSV
- [ ] B. 需要 JSON 格式
- [V ] C. 需要 Excel 格式
- [ ] D. 需要多種格式請指定___________
---
## 請提供以下資訊
### 資料庫連線資訊(請填寫)
```
資料庫類型___________
主機位址Host___________
埠號Port___________
資料庫名稱Database___________
使用者名稱Username___________
密碼Password___________
連線字串如有___________
其他說明___________
```
---
**請將回答後的檔案回傳,或直接在文件中標記選項。**