Goで文字コードを扱う方法
文字もUTF-8で扱うので日本語sjisを扱う場面では色々と面倒なのですが、
ちゃんとライブラリが用意されてます!
とりあえずいつものようにgo get しちゃいます。
使い方はまずimportして
変換エンコーディングするだけでお気軽ですねー
戻り値はちゃんとsjisに変換されてます。
他にも別のパッケージもあるけど、これが一番カジュアルで簡単な気がしますね。
GoでWebページをダウンロード
みんな興味があるスクレイピングだけど、相手先のサーバーに無駄に負荷をかけることになるので、とりあえずローカルにページを保存する方法です。
勝手にスクレイピングしちゃうし、最低限のマナーかなと思うし。
それでGoでどうやってHPを保存するかというと、意外と簡単です。
まずいつものように
↓↓
必要なライブラリをインポートしちゃいます。
必要なページのアドレスを送って
保存先を作成したら
中身を保存しちゃう
これだけでOK
エラー処理は適当にしちゃうけど、短いコードで出来るので
難しく考えなくてもいいのは気軽でいい。
Goでテキストファイル読み込みと文字コード
Goでテキストファイルを読み込んで処理しようとすると
必ず文字コードで引っかかる。
なんとも面倒な事なんですが、とりあえず日本語ならShift_JISエンコードしちゃいます。
ファイル読み込みと同時に処理しちゃうのが楽ですけどね。
↓↓ とりあえずいつものようにライブラリを go getしちゃいます。
↓↓ インストールできたら、importします。
これで準備OKです。
↓↓ 適当なテキストファイルを読み込んで、エンコードしちゃいます。
for文で一行毎に処理していく感じですけね。
これが一番お気楽な感じがします。
まぁ、早さとかを求めたらもっと効率がいい方法があるかもしれませんw
とりあえず、Goをカジュアルに使いたいので、これでヨシとします。
Go で Wordcloudを使う方法
ここを参考にしてみたんですけど、
>>Goで青空文庫の小説からWordCloud作ってみた - Qiita
まぁ、上手くいきませんw
初心者には難しことこの上ないww
とりあえずライブラリを go get しちゃいます。
>>GitHub - psykhi/wordclouds: Wordclouds in go
ここまでは特に問題ない。
とりあえずサラサラとコードを書いていったら
上手く実行できません・・・
まず、フォントを指定するんですけど、どうもこのライブラリは
ttfしか対応してないようです。
Macを使ってたので適当なttcを指定していたら、例外エラーになって
ひとしきり悩みましたw
あと、デフォルトでColorsを指定してあげないと、画像は生成されるけど、
BackgroundColorで指定した色の画像だけが生成されるw
文字色をしていしない場合は黒色で生成されると思ってたから、これも悩んだ!
エラーになれば初心者でも分かるんだけどな・・・
だからとりあえず文字色作って ↓↓
こんな感じに設定して ↓↓
生成されたのがコレ!! ↓↓
羅生門を解析した結果だけど、意外なほどカッコよくないですか?