東京生まれHOUSE MUSIC育ち

悪そうな奴はだいたい友達なの?

golang goqueryで不要なタグを削除・空タグを削除する方法

golangのgoqueryを使用してスクレイピングをしようとしています。不要なタグ(特に多用されているdivタグ)や空タグを削除しました。

googleで検索しても出てこなかったので、以下のGoDocを参照して不要なタグと空タグを削除する方法を調べました。自分のメモを兼ねて以下に。

goquery - GoDoc

不要なタグの削除

以下のようにRemove()をつけます。

s.Find("a").Remove()

空タグを削除する

Remove()で削除するのは同じなのですが、Find()でとってくる空タグの条件にemptyをつけます。

また、全ての空タグを対象としたい場合は「*(アスタリスク)」で表現します。

「*(アスタリスク)」でRemove()すると、brの強制改行タグも消えてしまうので、brタグを生かしたい場合はひとつひとつタグを指定する必要があります。

s.Find("*:empty").Remove() 

f:id:padobure:20170710212813p:plain:w150