WEB+DB PRESS Vol.68|gihyo.jp … 技術評論社
Ruby わくわくナビ最終回「データで見るRubyGemsの世界」で利用したコードです
Ruby 1.9.3 で動作を確認しています
クローラと、収集したデータの格納のための Sequel モデル定義
データ処理のための ActiveRecord モデル定義と、マイグレーションファイル
各種データ解析を行うスクリプト
Sequel データから ActiveRecord データへの移行を行うスクリプト
データクローリングのための Rake タスク
各種解析データと、可視化のためのスクリプト
収集データ用 sqlite3 ファイル
-
$ bundle exec rake store:titles
gem list -r
コマンドで得られるすべての RubyGems 名を sqlite に保存 -
$ bundle exec rake store:information
すべての RubyGems の基礎情報を Gem Methods - RubyGems.org API の API から取得
-
$ bundle exec rake store:version
すべての RubyGems のバージョン情報を Gem Version Methods - RubyGems.org API の API から取得
-
$ bundle exec ruby lib/models/setup.rb
解析用の ActiveRecord データのセットアップ
-
$ bundle exec ruby scripts/importer/importer.rb
クロールしたデータを ActiveRecord のデータに整形
-
$ bundle exec ruby scripts/importer/uri_importer.rb
クロールしたデータのうち、URI に関するものを ActiveRecord のデータに整形
-
$ bundle exec ruby scripts/importer/version_importer.rb
クロールしたデータのうち、バージョン情報に関するものを ActiveRecord のデータに整形