Wikipediaのページ解析に使ったpythonコード

Nov 30, 2014  

すっかりわすれていましたがソースコードです。
とりあえずpython触ってみようくらいの気持ちで書いたコードなので
pythonに慣習みたいなものがあるならたぶんそれには従えていません。
multiprocessing、numpy、pandasあたりをちゃんと使えば
格段に早くすることもできるかもしれません。やんないけど。

python wikipedia.py 20141101
のようにして日付指定して使います。

以下のようなことをやってます。
http://dumps.wikimedia.orgから1時間ごとの閲覧数のデータを1日分取ってくる
・国コード(?)がjaの物だけ抽出する
・標準ライブラリのCounterで各ページの1日分の閲覧数をカウントする
・閲覧数上位10000ページを取り出す
・1ページずつ開き記事内の/wiki/で始まるリンクを抽出する
・リンクがあれば距離1なければINFとして(ディクショナリで)隣接行列をつくる
・ワーシャルフロイド法で全点間最短距離を求める
・ソートして表示


Gistを使ってみました。綺麗に表示してくれますね。
過去の物をGistに置き換えたりはしませんが
今後はできるだけこれをつかっていこうと思います。

このエントリーをはてなブックマークに追加