官术网_书友最值得收藏!

2.8 日期和時間處理

java.util包提供的處理日期和時間的類有SimpleDateFormat、DateFormat、Date以及Calendar。其中,SimpleDateFormat和DateFormat類用來實現日期和時間的格式化,常使用的方法有format(Date date)和parse(String source);Date類主要處理指定格式的時間;Calendar類主要用于年月日類型數據的轉換。

在采集數據時,不同網站的時間使用格式可能不同。而不同的時間格式,會為數據存儲以及數據處理帶來一定的困難。例如,圖2.13所示為某汽車論壇中的時間使用格式,包含“yyyy-MM-dd”和“yyyy-MM-dd HH:mm”兩種格式;圖2.14所示為某新聞網站中的時間使用格式為“yyyy-MM-dd HH:mm:ss”。

針對汽車論壇中的“yyyy-MM-dd”和“yyyy-MM-dd HH:mm”格式,可以統一轉化成“yyyy-MM-dd HH:mm:ss”格式,以方便數據存儲以及后期數據處理,如程序2-14所示。在程序2-14中,parseStringTime()方法的作用是將字符串類型的時間標準化成指定格式的時間,這里通過調用DateFormat類中的parse()方法和format()方法來實現。

圖2.13 某汽車論壇中的時間使用格式

圖2.14 某新聞網站中的時間使用格式

程序2-14

圖2.15所示為程序2-14的輸出結果。

圖2.15 格式化時間

另外,采集數據時,通常需要記錄每一條數據的采集時間。圖2.16所示為采集的汽車銷量數據,字段craw_time表示采集每條記錄的時間信息。程序2-15給出了獲取當前時間的一個通用方法。在該方法中,使用了Date類的無參構造方法創建了一個Date對象,進而獲取當前時間。

程序2-15

圖2.16 采集的汽車銷量數據

再者,一些網站的時間格式為UNIX時間戳(即從1970年1月1日開始經過的秒數)。圖2.17所示為國外某藝術品網站,基于瀏覽器抓包(下一章中講解),發現該網頁的時間格式為UNIX時間戳,如圖2.18所示。為將UNIX時間戳轉化為指定格式的時間,需要構造一個通用的方法,如程序2-16所示。

程序2-16

圖2.17 國外某藝術品網站

圖2.18 網頁中的UNIX時間戳

主站蜘蛛池模板: 临猗县| 汝城县| 黔东| 石屏县| 广平县| 新河县| 岱山县| 大庆市| 晋州市| 维西| 洛隆县| 喜德县| 镇远县| 湘潭市| 新建县| 大丰市| 阜城县| 大连市| 白朗县| 阳谷县| 临夏市| 汉中市| 太仓市| 荥经县| 扎赉特旗| 苍山县| 科技| 昭苏县| 定远县| 习水县| 呼和浩特市| 泊头市| 隆尧县| 张家港市| 离岛区| 荃湾区| 滦平县| 大冶市| 共和县| 东安县| 泾川县|