Stats

Popular Posts

Followers

Mathematica 教學:讀取PTT資料

戴忠淵 於 2016年2月23日星期二 上午12:05 發表




(* 輸入資料 *)
data[i_]:=Import["https://www.ptt.cc/bbs/Mathematica/index"<>
ToString@i<>".html",{"XMLObject"}];

(* 讀取文章欄位資料 *)
mydata=Flatten[Flatten/@
Transpose@
{
Cases[data[#],XMLElement["div",{"class"->"date"},{date_}]:>date,
Infinity],
Cases[data[#],XMLElement["div",{"class"->"author"},{author_}]:>author,
Infinity],
Cases[data[#],XMLElement["a",{"shape"->"rect","href"->link_},{title_}]:>{title,link},
Infinity]
}&/@Range[34],1]

(* 分割年度 *)
mydate=Split[Quiet@Flatten@DateList[StringReplace[#,""->""]][[{2,3}]]&/@
mydata[[All,1]],#1[[1]]<=#2[[1]]&];

(* 重新定義日期  *)
mydata[[All,1]]=Flatten[MapThread[
Flatten/@Thread[{#1,#2}]&,{Range[2011,2016],mydate}],1];

(* 文章直方圖 *)
DateHistogram[mydata[[All,1]],#]&/@{"Month","Year"}

DateHistogram[Select[mydata,#[[2]]=="chungyuandye"&][[All,1]],#]&/@{"Month","Year"}

Tags: ,

讀者回應 ( 0 意見 )

發佈留言

Please leave your name and tell me what you thought about this site. Comments, suggestions and views are welcomed.

如果這篇文章對你有幫助,那請留個訊息給我~