goをかじるために、試しにYahoo!ニュースのタイトルをスクレイピングするコードを描いてみました
- 勉強会を企画してくださった @takkota さんありがとうございました!
環境
Mac OS 10.14.5
インストール
brew install go
使用したライブラリ
ライブラリのインストール
$ go get github.com/PuerkitoBio/goquery
コード
.go
package main
// fmtパッケージをインポートする
import "fmt"
import "github.com/PuerkitoBio/goquery"
// main関数
func main() {
doc, err := goquery.NewDocument("https://news.yahoo.co.jp/list/")
if err != nil {
panic(err)
}
doc.Find("div.listArea dl.title dt").Each(func(i int, s *goquery.Selection) {
fmt.Println(s.Text())
})
}
実行結果
$ go run main.go
大谷 マエケンから7号ソロ
女医殺害 山形大生の男逮捕
香港でデモ 若者らが道路占拠
iKONのB.Iが薬物使用か 報道
日産社長再任 2社が反対推奨
犬猫チップ義務化 改正法成立
PCエンジン 32年越しの復活
ワークマンプラス 続く快進撃
日本で代理購入 中国人の役割
ビートたけしが離婚
木村拓哉 鬼教官役で正念場
本田「監督」がW杯2次予選へ
福岡事故 逆走の数十秒に何が
都 HPで虐待「推進」と誤植
尾木ママ・72歳 免許自主返納
NHKクロ現 田中泉アナが退職
ミサイル警戒衛星の保有検討
一気飲みで死亡 介抱の責任は
携帯違約金 大手3社の危機感
政府 特区審査開催を非公開に
感想
- class無いんですね
- 引数にポインタを明示的に渡せるの個人的には便利
- 他の言語だとwarn止まりになりそうなことでコンパイルが止まるのむしろ良いと思った
- import 先の文字列をそのままブラウザにコピペすれば、githubに到着するの便利
疑問
- パッケージマネージャーやバージョンマネージャーはあるのかな?(無いことはないだろうけど