Skip to content

grant1004/TechNews-AnalysisSystem

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

科技新聞分析系統 (TechNews Analysis System)

一個專門針對 TechNews.tw 網站的科技新聞分析系統,具備自動爬蟲、內容分析和股票公司識別功能。

功能特色

  • 🚀 智能爬蟲: 自動解析 TechNews.tw 網站地圖,按日期範圍抓取文章
  • 🧹 數據清理: 自動處理和標準化爬取的新聞內容
  • 🔍 文本分析: 使用 Jieba 中文分詞識別文章中的公司名稱和市場趋勢
  • 🖥️ 圖形界面: PyQt6 構建的現代化深色主題界面
  • 📊 進度追蹤: 實時顯示爬蟲和分析進度
  • 🎯 日期篩選: 靈活的日期範圍選擇功能

系統要求

  • Python 3.7+
  • Windows/Linux/macOS

安裝說明

  1. 克隆專案到本地
git clone <repository-url>
cd TechNews-AnalysisSystem
  1. 安裝相依套件
pip install -r requirements.txt

使用方法

啟動應用程式

python src/main.py

基本操作

  1. 選擇日期範圍: 使用日曆選擇器設定分析的起始和結束日期
  2. 開始分析: 點擊「開始分析」按鈕執行完整的爬蟲和分析流程
  3. 查看進度: 透過進度條和即時日誌監控處理狀態
  4. 檢視結果: 在結果區域查看分析完成後的內容

進階功能

  • 跳過爬蟲: 勾選此選項可略過網頁爬取,直接使用現有資料進行分析
  • 中止分析: 點擊「停止分析」可隨時終止正在執行的任務

核心架構

src/
├── main.py              # 主程式 - PyQt6 GUI 界面
├── scraping/
│   └── scraper.py      # 網頁爬蟲模組
├── utils/
│   ├── ContentAnalysis.py  # 中文文本分析
│   ├── DataCleaner.py     # 數據清理工具
│   └── stock_dict.txt     # 股票公司詞典
└── database/           # 資料庫模組 (預留)

技術特點

中文文本處理

  • 採用 Jieba 分詞引擎
  • 支援繁體中文詞典
  • 自定義股票公司詞庫識別
  • 智能提取趋勢關鍵詞

多執行緒架構

  • GUI 主執行緒保持響應性
  • 背景執行緒處理耗時的爬蟲和分析任務
  • 即時進度回調更新

網頁爬蟲策略

  • 智能解析 XML 網站地圖
  • 按月份篩選目標文章
  • 批次處理避免伺服器壓力
  • 自動重試和錯誤處理

主要相依套件

套件名稱 版本 用途
PyQt6 6.7.0 GUI 界面框架
beautifulsoup4 4.12.3 HTML 解析
pandas 2.2.2 數據處理
jieba 0.42.1 中文分詞
requests 2.32.3 HTTP 請求
tqdm 4.66.4 進度條顯示

開發說明

自定義詞典

編輯 src/utils/stock_dict.txt 新增股票公司名稱:

台積電 stock
聯發科 stock
鴻海 stock

分析流程客製化

src/utils/ContentAnalysis.py 中調整關鍵詞提取邏輯:

def extract_companies(text):
    # 自定義公司名稱提取邏輯
    pass

def extract_keywords(text):
    # 自定義趨勢關鍵詞提取邏輯
    pass

注意事項

  • 請遵守 TechNews.tw 網站的使用條款和爬蟲禮儀
  • 系統會自動在請求間增加延遲以避免對伺服器造成壓力
  • 建議在網路連線穩定的環境下使用
  • 分析大量文章時請確保有足夠的磁碟空間

授權條款

本專案採用 MIT 授權條款 - 詳見 LICENSE 文件

貢獻指南

歡迎提交 Issue 和 Pull Request 來改善此專案。在提交程式碼前,請確保:

  1. 程式碼符合 PEP 8 標準
  2. 新增適當的中文註解
  3. 測試新功能的穩定性

聯絡方式

如有問題或建議,請透過 GitHub Issues 回報。

About

針對 technew.tw 新聞網站文章,分析市場趨勢

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages