メモ。
Go で html に対してスクレイピングを行うには jQuery ライクに探索できる goquery が便利だと伺ったので使ってみることに。
標準ライブラリの http.GET()
に相当するものはgoquery.NewDocument()
だけれど、今回使いたかった http.PostForm
に当たる API が見当たらなかったので調べてみた。
なんのことはなく、http.PostForm()
で得た結果を goquery.NewDocumentFromResponse()
に渡すだけだった。
// 普通に PostForm して resp, err := http.PostForm( "http://example.com/", url.Values{"key": {"value"}}) if err != nil { log.Fatal(err) } defer resp.Body.Close() // NewDocumentFromRespones に食わせるだけ doc, err := goquery.NewDocumentFromResponse(resp) // 取得した doc を使ってすきな処理をする
メモおわり。