最近の言語学習で爬虫類を行く、小さなデモを書きました
メインパッケージ のインポート( "FMT" "IO / ioutil" "ネット/ HTTP" "正規表現" "は、StrConv" ) 作品の構造体{入力 名の文字列の マーク列の 人文字列の 時間文字列の URL文字列 } funcをメイン(){ [(=作る:CHSを】チャンINT、10) sliceList:= [] INT {1291841,26761416,1309220,1300741,1293172} iについて、V:=範囲sliceList { 子(V、CHS [I])を行く } =範囲:_、CHためCHS { <-ch } } FUNC子(ID int型、CHちゃんのint){=ゼロ{ パニック(ERR) } URL:= "https://movie.douban.com/subject/" + strconv.Itoa(ID)+ "/" RESP、ERR:= http.Get(URL) の場合、ERR = nilの{! 延期resp.Body.Close() SHTML、_:= ioutil.ReadAll(resp.Body) 映画:=新しい(動画) movie.name = GetValueメソッド( `<またがる\ sの*プロパティ= "V:itemreviewed">。</ span>の`)*(&SHTML) movie.mark = GetValueメソッド( `<強い\ S *クラス= "LL \ sの* rating_num" \ sの*プロパティ= "V:平均"> </ strong>の`&SHTML)(*。) movie.person = GetValueメソッド(` <HREF = "/セレブ/ [0-9] + /" REL = "V:directedBy "(。*)> </a>の`&SHTML) movie.time = GetValueメソッド( `<スパンプロパティ=" V:ランタイム」コンテンツ= "(*)。"> * </ span>の`&SHTML) 映画する.url = GetValueメソッド( `<a href="(.*)"のtarget="_blank"のrel="nofollow">。* </a>に`&SHTML) fmt.Println(ムービー) CH < - 1 } のGetValue FUNC(ルール列、SHTML * []バイト)の文字列{ REG:= regexp.MustCompile(ルール) 結果:= reg.FindAllStringSubmatch(文字列(* SHTML)、1) リターン結果[0] [1] }