We're taking extra measures to ensure your children are safe. Learn More
貳、學習
(二)學習二: SmartView 資料擷取自動化專案
在網管部門的日常維運工作中,SmartView 系統會記錄公司內部所有 IP 位址的使用狀況,包括連線來源、目的地、使用的服務(Service)、封包數量與時間戳記等詳細資訊。由於公司網路規模龐大,單一 IP 每月可能產生數百萬筆紀錄,而部門同仁常需要分析各 IP 使用過的服務類型,以掌握網路流量趨勢與安全狀況。
過去的作業方式是由同仁登入 SmartView 網頁介面,透過網站提供的過濾功能,逐一查詢每個 IP 的 Service 紀錄,再手動整理去重。由於每次查詢的資料量龐大,即使使用篩選條件,也需要等待約 20 分鐘 才能完成單一 IP 的過濾與資料擷取。若要對上百個 IP 進行相同操作,整個流程將耗費數天,效率極低。
為了解決這個問題,我開發了一套 SmartView 資料自動化擷取系統,利用 Python 搭配 Selenium 實現全自動化的查詢與資料整理流程,讓原本繁瑣的人工操作轉化為穩定且高效的自動流程。
系統開發與運作流程
-
自動登入與環境設定
-
程式透過 Selenium WebDriver 自動開啟瀏覽器,模擬使用者輸入帳號與密碼登入 SmartView 系統。
-
登入後,自動設定所需的查詢條件,以確保資料擷取結果一致。
-
-
批次查詢與資料擷取
-
系統會依序讀取部門提供的 IP 清單,自動在 SmartView 中輸入 IP,啟動搜尋並等待查詢完成。
-
程式具備等待與回應檢測機制(WebDriverWait),確保在頁面資料完全載入後才進行擷取,避免資料缺漏。
-
抓取結果後,自動擷取網頁上顯示的「Service 使用紀錄」欄位資料,並寫入暫存檔案。
-
-
資料清理與去重整理
-
由於 SmartView 查詢結果中常包含重複的 Service 項目,我撰寫了自動去重的邏輯,讓最終輸出結果僅保留不重複的 20–30 筆 Service。
-
同時,系統會依據 IP 與日期自動建立資料夾與檔名,確保結果分類清楚且易於查找。
-
-
自動化輸出與報表生成
-
程式執行結束後,會自動將所有結果整合為 Excel 格式,供同仁直接分析使用。
-
並能根據需求自動統計出各 IP 最常使用的服務,提供初步分析報告。
-




