つばさのーと

つばさの日常を綴るのーと

リベンジ成功。自分が今までたくさんブクマしたのは誰か調べてみた

f:id:tsubasa123:20170128180041j:plain

 

こんにちは、つばさ(@tsubasa123)です。

 

3日連続ではてぶAPIに関する記事になります。今日もコード無しの自己満報告となります。興味がありましたらお付き合いください。

 

自分のブックマークはRSSから取得できた

 

昨日の記事で自分のブクマを取得するAPIが見つからない!と言いましたが、普通にありました。私の確認不足です、お恥ずかしい。

 

syncer.jp

 

こちらの記事の「RSSフィードを取得する」を参考にすれば任意のユーザーのブックマーク情報も取得可能になっていました。こっちはXMLなのか、めんどくさいな。

 

ブクマ取得のためのURL的は、

 

http://b.hatena.ne.jp/{ユーザーID}/rss?of={ページ}

 

こんな感じになります。

 

先の記事にもありますが、1回のリクエストで取得できるブクマの件数は20件まで。なので、全件取得しようとするとちょっと工夫が必要になります。

 

1ページで20件ずつ取得することができます。ページの指定は20単位で行ないます。例えば2ページ目(21〜40件目)を取得したい場合はof=20を、3ページ目(41〜60件目)を取得したい場合はof=40を指定して下さい。このofというのは、offsetのことですね。

 

URLの後ろに20、40、60、のように数値を加えることで2ページ目、3ページ目、4ページ目のブクマ情報を取得できるようになっています。なぜ1、2、3にしなかったのか、まぁいいですけどね。

 

サクッと完成

 

こちらも仕組みさえわかってしまえば作るのはそんなに難しくありません。ただし、先のRSSで配信されている情報には、はてぶユーザーに限らず私がブクマした情報がすべて登録されているので、はてぶユーザーに限定して確認するにはさらに一工夫が必要でした。

 

具体的には、フィードから取得したURLのページを取得し、ヘッダー情報を解析してはてなブログかどうかをチェックし、はてなブログだったらユーザー名も取得する、みたいなことをごにょごにょやってみました。はてなブログかどうかの判定が正しいかまでは確認できていませんが、まぁ私的に使うだけなのでよしとします。

 

結果ですが、セルクマが一番多くて14回でした。自分大好きかよ、お恥ずかしい。その他は省略とさせていただきます。

 

おまけ

 

一昨日の記事にちょっと気になるコメントがついていました。

 

はてなの闇が暴かれる?!(笑)

 

なんのこっちゃと思っていたのですが、ちょっとだけ闇に触れてきたかもしれません。なかなかおもしろそうなサービスを作って公開されている方もお見かけしました。そのサービスの目的とかは知りませんが、単純に仕組みとしてはすごいなーと感心しました。私も同じことができるか挑戦中です。

 

なんかブックマークの使い方に関しては様々な意見があるようですね。

 

さいごに

 

昨日のリベンジに成功して大満足です。この3日間で、

 

  • 自分のブクマ情報を調べる
  • 自分へのブクマ情報を調べる
  • ブクマに対するブコメを調べる

 

3つの武器を手に入れました。あとはこれをどう組み合わせて遊ぼうか。外部通信を多用するので負荷的な問題も考えながら楽しもうと思います。何かアイデアがあったら教えていただけるとうれしいです。

 

ではでは、最後までお付き合いいただきありがとうございました。