この記事をシェアする

mixiアプリの会員数をグラフ化

twitterでmixiアプリ(携帯)の「まちつく!」がハンパないぐらい会員数が伸びてるってことで、mixiから会員数を取得してくるスクリプトを書いてrrdでグラフ化してみた

mixi-app-graf

増加の角度が他のアプリに比べてスゴイ!

まず、設定ファイル。 mixiのメアドとパスワードと対象になるミクシィアプリのidを保存して下さい。

get_mixiapp_members.yaml
mixiusername: foobar@example.com
mixipassword: password
mixiapp_id: 9513

yamlフォーマットのファイルと同じ場所に下記を置いて実行。

get_mixiapp_members.rb

#!/usr/bin/ruby
# -*- coding: utf-8 -*-
require 'rubygems'
require 'mechanize'
require 'open-uri'
require 'kconv'
require 'yaml'
require 'csv'

# 設定情報読み込み
yaml_path = File.expand_path(File.dirname(__FILE__)) + '/get_mixiapp_members.yaml'
config = YAML.load_file(yaml_path)

# Mechanizeの初期化
agent = WWW::Mechanize.new

# login mixi sns
page = agent.get('http://mixi.jp/')
form = page.forms[0]
form.fields.find {|f| f.name == 'email'}.value = config['mixiusername']
form.fields.find {|f| f.name == 'password'}.value = config['mixipassword']
form.fields.find {|f| f.name == 'next_url'}.value = '/home.pl'
page = agent.submit(form, form.buttons.first)

# mixiapp page open uri
page = agent.get("http://mixi.jp/view_appli.pl?id=" + config['mixiapp_id'].to_s)

# mixapp member count
print page.search('dd.numMymixi')[0].inner_text.scan(/[0-9]+/)

会員数を取ってくるので、これをrrdとかcactiに設定すれば、会員数の推移をグラフ化できます。競合アプリの調査にでも使ってください。

ちなみに、さらにちょっと改造して、引数でidを指定するようにしてcactiにてグラフを生成してます。

スポンサーリンク

この記事をシェアする

著者をフォローする