読書メーターには、読書記録(読んだ本、積ん読本、読みたい本、本棚など)を外部にファイルとしてエクスポートする機能がありません。Ruby のライブラリ mechanize, nokogiri を使って、読書メーターのサイトをスクレイピングして、データをExcelブックに取り出すプログラムを作りました(bmscrp.rb )。Excelブックの生成には rubyXL を使い、書誌情報の収集は prallel を使って並列処理しました。 nokogiri がスクレイピングに必須なのは言うまでもありませんが、parallel で並列処理が簡単に記述できるのは、RESTなサイトからデータを収集する時にとても便利です(サイトに負荷をかけないように気をつけないといけませんが)。 github で公開しています。以下、README.md からの抜粋です。 Requirements ruby 2.1.8,
RubyのMechanizeとNokogiriで読書メーターをスクレイピング Rubyで読書メーターをスクレイピングしたい 読書系SNSの読書メーターを利用しています。 読書メーター - あなたの読書量をグラフで管理 ユーザー間のコミュニケーションも活発で、お気に入り・お気に入られ(Twitterでいうフォロー・フォロワーの関係)のユーザーとどのくらい同じ本を読んでいるか(このことを共読と呼んでいます)、なんて話題で盛り上がったりしてます。 ユーザー毎のマイページでそういう情報は確認できますが、数字は日々変化しますし、何十人、何百人といると楽な方法が欲しくなります。 あるお気に入りユーザーの方がPerlで共読数などを一括取得するスクリプトを書かれていて、以前それをいただいたんですが、自分の環境ではうまく動かなかったのでどうせなら自分が勉強中のRubyで同じものを書いちまえ、ということで書い
RubyのMechanizeとNokogiriで読書メーターをスクレイピング Rubyで読書メーターをスクレイピング Rubyで読書メーターをスクレイピングしたい 読書系SNSの読書メーターを利用しています。ユーザー間のコミュニケーションも活発で、お気に入り・お気に入られ(Twitterでいうフォロー・フォロワーの関係)のユーザーとどのくらい同じ本を読んでいるか(このことを共読と呼んでいます)、なんて話題で盛り上がったりしてます。 ユーザー毎のマイページでそういう情報は確認できますが、数字は日々変化しますし、何十人、何百人といると楽な方法が欲しくなります。 あるお気に入りユーザーの方がPerlで共読数などを一括取得するスクリプトを書かれていて、以前それをいただいたんですが、自分の環境ではうまく動かなかったのでどうせなら自分が勉強中のRubyで同じものを書いちまえ、ということで書いてみました
Rubyで読書メーターをスクレイピング Rubyで読書メーターをスクレイピングしたい 読書系SNSの読書メーターを利用しています。 読書メーター - あなたの読書量をグラフで管理 ユーザー間のコミュニケーションも活発で、お気に入り・お気に入られ(Twitterでいうフォロー・フォロワーの関係)のユーザーとどのくらい同じ本を読んでいるか(このことを共読と呼んでいます)、なんて話題で盛り上がったりしてます。 ユーザー毎のマイページでそういう情報は確認できますが、数字は日々変化しますし、何十人、何百人といると楽な方法が欲しくなります。 あるお気に入りユーザーの方がPerlで共読数などを一括取得するスクリプトを書かれていて、以前それをいただいたんですが、自分の環境ではうまく動かなかったのでどうせなら自分が勉強中のRubyで同じものを書いちまえ、ということで書いてみました。 共読解析ツールのソースコ
kyodoku.rb p��r V �M�r V # -*- coding: utf-8 -*- require 'mechanize' require 'nokogiri' require 'kconv' module HashInitializable def initialize(attributes={}) attributes.each do |name,value| send("#{name}=",value) end end end class HashInitializableStruct def self.new(*arguments) struct = Struct.new(*arguments) struct.send(:include, HashInitializable) struct end end properties = [:id,:name,:user_u
読書メーターはインポート機能が無いので他の蔵書管理から移るのが めんどくさいのですが,Perl の WWW::Mechanize 使ってさくっとやる方法. Perl 分かんない人は下手に手を出すと読書メーターがひどいことになるので注意 w Perl 分かる人は適当に加工して使うといいんじゃないでしょうか. できあがった読書メーターはこちら.reverse 入れ忘れたので読み終えた本以外, 逆順だけど,まぁどうでもいいや. 読書メーター – riywo さんの読書メーター SSBCSV モジュール まずは StackStockBooks のエクスポート機能で CSV ファイルを書き出します. このファイルには ISBN とか書名とかいろんな情報が入ってますが,基本的に 使うのは「ISBN」「状態」「日付」で良いと判断しています. あとは Perl で読み込みます.Text::CSV::Sim
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く