Powerful-Toolkit-in-Java-Using-HTML-Parser-to-Crawl-Internet-Data 是一個使用 jsoup 庫來從指定的網站上爬取股價資料的Java工具,並將這些資料保存到CSV檔案中。程式可以分析已蒐集的資料,並提供多種股價數據的分析功能,如5日移動平均、標準差和回歸分析。
- 股價爬取:從指定網站抓取當前時間的股票名稱與股價,並追加到
data.csv檔案中。 - 股價分析:分析已蒐集的股價數據,並根據輸入的命令輸出至
output.csv。
爬取的HTML檔案包含兩個重要資訊:
- 股票名稱:例如:
AAPL,AMZN,GOOGL等。 - 當前股價:例如:
1.72,45.95,170.12等。
這些數據將自動追加到data.csv檔案,供後續的數據分析使用。
執行程式時,必須指定模式(mode)、任務(task),以及相關參數。以下是程式的執行格式:
java HtmlParser {mode} {task} {stock} {start} {end}-
mode:選擇程式運行的模式。
0:爬蟲模式,爬取當前時間點的股價資料並追加至data.csv。1:分析模式,根據task參數分析股價資料並輸出結果至output.csv。
-
task:在分析模式下使用,指定分析任務。
0:輸出所有蒐集的股價資料。1:輸出指定股票在指定時間段內的5日移動平均。2:輸出指定股票在指定時間段內的股價標準差。3:輸出指定時間段內標準差最大的前3名股票。4:輸出指定股票在指定時間段內的股價回歸直線。
-
stock:分析的股票代號(當
task == 3時無需此參數)。 -
start:分析的開始天數。
-
end:分析的結束天數(含結束天)。
java HtmlParser 0java HtmlParser 1 0java HtmlParser 1 1 AAL 2 6java HtmlParser 1 2 AAL 1 3java HtmlParser 1 3 AAL 1 15java HtmlParser 1 4 AAL 1 30-
data.csv:以爬蟲模式 (mode=0) 執行時,將爬取的股價資料追加至該文件。- 每次追加一行,格式為股票代號及其對應的股價。
-
output.csv:以分析模式 (mode=1) 執行時,根據不同的task輸出對應結果。- task=0:輸出所有蒐集至今的股價資料。
- task=1:輸出指定股票在指定時間段的5日移動平均。
- task=2:輸出指定股票在指定時間段的股價標準差。
- task=3:輸出指定時間段內股價標準差最大的Top-3股票。
- task=4:輸出指定股票在指定時間段的股價回歸直線。
jsoup:用於解析HTML和爬取網站數據的Java庫。