iTunesの曲目からワードクラウドを作る(Python)

ワードクラウドって何?

こういうのです.

f:id:h_nitoliam:20160109131631p:plainf:id:h_nitoliam:20160109131634p:plain

iTunesライブラリからこういうのを作ると,その人の音楽の趣味がひと目で分かってとてもおもしろいですよね?

どうやって作るの?

amuellerさんが書いたword_cloudというパッケージがあるのですが,これを使うと:

  • 適当な英文
  • [(String, Integer)]形式のリスト

とかを入力として与えてやることで,簡単にワードクラウドが作れます.

github.com

つまり,iTunesの曲目からワードクラウドを作りたければ,iTunes Library.xmlをParseして曲名,曲数,再生回数などを取り出して,それを入力とすればいいわけですね!

parsingにはBeautifulSoupとかlxmlが使えるかと思いますが,今回はlxmlを使ってみました.

書いたコード

Gistに上げておきました(はじめてGist使いました)

予め,スクリプトと同じディレクトリにiTunes.xmlとリネームしたxmlファイルを配置しておけば,後は実行するだけで

  • アーティスト名と再生回数
  • アーティスト名と曲数

のワードクラウドが作れます. 注意点として,自分のスクリプトがlxmlを使っているのと,word_cloud自身がmatplotlibとImageに依存しています.

従ってこれら無しだと動きません.

あと,フォントとしておもいっきりヒラギノを指定してます.Windowsの人は注意です.

flaskで初めて作ったWebアプリを改良しました

f:id:h_nitoliam:20160105170714p:plain

改良しました.

Highcharts.jsを使って,

  • 投稿に使ってるクライアントの分布
  • 月別のTweet数の推移

をグラフとして表示するようにしました.

形になったのでHerokuにデプロイしようかと思いましたが,MeCab周りで詰まったので諦めました. そのうちやる気が出たらRaspberryPiで動かそうかとも思います.

flaskで初めてのWebアプリ作りました

作りました.

https://gyazo.com/9da7d05330989f27e87b99afa6bf328b

2015年をTwitterで振り返る(後編)

2015年振り返り後編です. ちなみに過去ツイートはArchiveをTwitterからダウンロードして,そこからPermalinkをコピーしてはてなブログの貼り付け機能で貼ってます.

なかなか便利ですね.

7月

twitter.com

Apple Music,FoalsとかThe KillersとかWalk The MoonとかのTSUTAYAにレンタルCDがないようなアーティストのアルバムが全部あるので神サービスだと思っている.あと映画とかのサントラもだいたいある(と思う).少なくとも「セッション」のサントラはあった.

試用期間が終わったら解約してしまったので,現状それらは聴けてないけど…また契約しようかな.

twitter.com

童貞を殺す服,あれから聞かなくなったな…

twitter.com

試験前になると頭がおかしくなる現象,なんとかしたいとは思っている.

twitter.com

twitter.com

この表現,なぜか全然人に伝わらないんだけどなんで????

8月

夏休みですね.

twitter.com

焦って証明写真を取るのはよくないという勉強になりました.

パスポートは10年後だし,同じくやらかした免許証写真については3年後なので,リベンジが遠い…

twitter.com

KEENのサンダルは今年の俺的マストバイアイテムNo.1です.

夏の旅行とか全部コレで通したけど,すごく良かった.

twitter.com

南アルプスをサークルの先輩と7日くらいかけて縦走したけど,本当にいい思い出になった.

楽しかった.

twitter.com

何気に今年の一番高い買い物だったかもしれない.

単焦点というだけあって,すごく明るく写してくれる良いカメラです.

9月

MGSVが発売されたけど,夏の予定が充実しすぎてて起動すらできなかった…

twitter.com

とりあえずエンディングのネタバレを回避することはできたので,まあ上々というところ?

twitter.com

タイ→カンボジアベトナムというアジア横断ツアーしてきました.

ひたすらぼったくられる,そういう思い出があります.

twitter.com

まあいい思い出です.

twitter.com

ようやく自分の部屋にV HAS COME TOしたのがこの日.

10月

ひたすらMGSVをプレイしていた.そんな10月だった.

twitter.com

あまりにも面白かったので,Twitterもやらないでひたすらプレイしていた.

月の終わりにプレイ時間を確認したら100時間超とかになってて.「なんだたったの100時間か…」と思ったんだけど,冷静に考えて一日平均3時間以上なのでやっぱり頭がおかしいくらいプレイしていたと思われる.

twitter.com

バイクの免許を取り始めたのもこの月ですね.

バイク,免許は取れたんだけど肝心のバイクが原付しかないので全然免許を有効活用できてない…

だれか400ccのMT車でいいのでください.

twitter.com Split Viewがすごく便利です.

あとはよくわからない.

11月

twitter.com

まさか達成率100%までやることになるとは思わなかった.

ちなみにMGO3は未プレイです.あんまり楽しくなさそうだし…

twitter.com

研究室を決めるのに悩んだ.

正解は今でもわからない.

twitter.com

バイクの卒検,クランクで転倒したので一発合格はできなかったよ…

twitter.com

教習所が楽しすぎて(あと暇すぎて)免許を一月で取得してしまった大学生の姿がここにはある.

12月

twitter.com

いやまああんまりFKとかSTとか書いちゃうとスタンプの審査に通らないのはわかるんだけど,それにしたって毒が足りないスタンプなんだよね…

twitter.com

再度Pythonの勉強を始めたのが最近.Pythonいいよね,Python(他の言語を知らない)

twitter.com

スターウォーズよかった! 良すぎて1月にもう一度観に行くことが決まってしまった.今度は3Dだ!!!

twitter.com

最近FlaskでセコセコWebアプリ作ってみたりしてるんだけど,その最中の出来事であった.もう一年遊ばない方向で行きたい.

twitter.com

いや,ほんと「ウワワワワワワー」ですよ,ほんと.

それでは.

2015年をTwitterで振り返る(前編)

趣旨

実家に帰って来たはいいもののヒマすぎるので,Twitterへの投稿から2015年を振り返ってみようと思う

1月

twitter.com

GTAやってた.ほぼオフライン専で100時間以上は遊んだと思う.

twitter.com twitter.com

大学の期末試験で精神的に死んでいたらしい.

試験程度で死にたくなるとはコヤツ精神的に脆すぎるな…まあ2016年1月も試験あるんですが.

2月

twitter.com

IIJmioひかりの契約の検討をしていたらしい.今現在も使ってるけど何も問題なくていい感じです.

IIJの難点といえば,会社名を人に説明するのが大変なことですね…

twitter.com

買ってませんよ!!!!!!

twitter.com

ボルダリングにハマり始めたのがこの時期らしい.シューズとかチョークバッグも揃えて本格的に始めたんだけど楽しいです.

twitter.com

twitter.com

電気回路の単位を落としてぶっ壊れた

次のセメスタの再試験で単位は拾ったので何も問題無いですね.

3月

twitter.com

春休みヒマすぎて立派にボルダリング厨になってました.そんなに上達はしませんでしたが.

twitter.com

あんた,おかしいのか…

twitter.com

本当に卑怯だと思うし,将来自分はハニートラップで身を滅ぼすと思う.

twitter.com

やっぱりIIJmioは伝わならないんや…

twitter.com

攻殻機動隊みたらしい.結局シーズン1しか見てないのでそのうち映画ver.とかも観てみたいとは思っている.

4月

twitter.com

ヤフオクThinkpad x61を落としたんですが,キーボードだけ送られてこないというトラブルに遭遇.

出品者に電話したところガチャ切りされて,結局そのまま泣き寝入りとなりました.4000YENくらいの勉強代だと思って別途キーボードは購入しました…

twitter.com

キーボードを手に入れたあとはウキウキでArch Linux入れたりUbuntu Mate入れたり遊びました.

今? 俺の家で寝てるよ.

twitter.com

いやほんと…アレはご褒美的な展開でしたね…

5月

twitter.com

洗濯機の糸くずネットの闇に飲み込まれたのがこの時期だったらしい.

あ,そういえばしばらく掃除してねえな…

twitter.com

今ではノータイムでボラギノール余裕ですんで,全然問題無いっすね

twitter.com

手書きレポートの闇は深い.

6月

twitter.com

そういうわけで今の研究室を決めました.

twitter.com

自分のよくわからん経歴を"/"で書き連ねてるTwitterのプロフィール,ほんと嫌い

twitter.com

即挫折余裕でした.

フルスタックフレームワークは覚えることが多くて大変」というどこかで誰かが言ってた言葉を言い訳にしています.

長いんで後編へ続く.

virtualenv環境下でのdefaultencodingについて(Python)

HomebrewなんかでPythonを入れた場合,defaultencodingを変更したかったら

/usr/local/Cellar/python/2.7.10_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/

にsitecustomize.pyという名前の

# -*- coding: utf-8 -*-
import sys
sys.setdefaultencoding("utf-8")

と記述したスクリプトを置いておけばいいわけだけど, virtualenvを使って作業していたときに,気がついたらdefaultencodingがまたasciiになってるということがあった.

どうやら,virtualenv環境下のPythonでは,sitecustomize.pyを配置するディレクトリが違うらしい.

具体的には,

~/.virtualenvs/<VIRTUALENV NAME>/lib/python2.7/site-packages/

(VIRTUALENV NAMEには,仮想環境の名前が入る)

に同内容のsitecustomize.pyを置いてやるとうまくいった.

仮想環境作るたびにこれやるのめんどくさいので,適当にシェルスクリプト書いてやればいいんだろうなという気がする.

自分はシェルスクリプト書けないマンなので手作業でやります…

YahooBBからIIJmioひかりに移行した

自宅のインターネットプロバイダを、YahooBBからIIJmioひかりに移行したのでメモというか感想

変えた理由

  • フレッツ光の割引(にねん割、思いっきり割)がちょうど2015年の4月で切れてしまうため、固定回線の維持費が高くなってしまう
  • 今現在MVNOのSIMとしてIIJmioを使っているので、mio割で合計750円ほど月々の割引が効く
  • 回線料金の月々の支払がソフトバンクIIJmioの2つになってスッキリする
  • IIJmioひかりは、最低利用期間(確か1年)を越えて使った場合は、解約時に別途支払いが発生しないので、精神衛生上気分が良い

維持費の変化

IIJmioひかりにしない場合

  • 2015年4月まで: フレッツ光の利用料で3013円+YahooBBへの支払いが997円 = 4010円
  • 2015年4月以降: フレッツ光の利用料で3672円+YahooBBへの支払いが480円(多分) = 4152円

YahooBBへ支払う金額が、3年目以降は割引されるらしいのでトータルの維持費はそんなに変わらなかったのかな…?

IIJmioひかりにする場合

  • 2015年4月まで: フレッツ光の利用料で3013円+YahooBBへの支払いが997円 = 4010円
  • 2015年4月以降: (3960円-750円) * 1.08 = 3466円

明らかに安いですね

で、IIJmioひかりに設定してみた

気になるのは速度の変化ですが、テストしてみた結果を貼っておきます。

YahooBBの
f:id:h_nitoliam:20150319221440j:plain

IIJmioひかり
f:id:h_nitoliam:20150319221434j:plain

…別に変わってないっすね。そもそも会社を変えたからって速度が変わったりはしないものなんでしょうか?わかりません。