Hatena::Groupnadesiko

そっとなでしこ RSSフィード


メインのブログに書くまでもない、なでしこ学習帳【記事一覧】 【このブログは何?】


特設!→【目次】なでしこ用Twitter 連携ライブラリ「なこったー」で遊ぶ


2011-05-20

「なこったー」で自分がブロックしているユーザーの一覧を取得する

| 「なこったー」で自分がブロックしているユーザーの一覧を取得する - そっとなでしこ を含むブックマーク はてなブックマーク - 「なこったー」で自分がブロックしているユーザーの一覧を取得する - そっとなでしこ

 日本語プログラミング言語「なでしこ」用Twitter 連携ライブラリ「なこったーの「ブロックユーザ一覧取得」関数を使用し、Twitter APIの「statuses/user_timeline」 APIを呼んでみるサンプルです。

関数】ブロックユーザ一覧取得({ハッシュ=?}PARAMで)~

 今回使用する関数は、「ブロックユーザ一覧取得」関数です。

■説明

 Twitter APIの「blocks/blocking」 APIを「なでしこ」から呼び、自分がブロックしているユーザの一覧を取得する関数です。

 「blocks/blocking」 APIについては以下の通りです。

自分がブロックしているユーザの一覧を取得する

Twitter API 仕様書 日本語訳

http://watcher.moe-nifty.com/memo/docs/twitterAPI.txt

■引数

詳細は、「Twitter API 仕様書 日本語訳」等を参照のこと。

  • {ハッシュ=?}PARAMで
    • 省略可能です。今回のサンプルでは使用していません。
    • ハッシュ形式で以下の項目を指定できます(例:パラムとはハッシュ。#パラム@「count」=200。)
      • page=ページ番号
        • (1ページを20件とみなしたときの)ページ番号を指定することで、過去の任意の言及を20件単位で取得
■戻り値

Twitter APIへの問い合わせに成功した場合に取得した値は、ハッシュテーブルの配列に格納されて戻ります。

詳細は、以下を参照。

■作成したサンプルについて

 機能はこんな感じ。

  • 自分がブロックしているユーザの一覧を取得し、ユーザーのプロファイル(ユーザー名、名前、自己紹介)グリッド表示
  • 任意の行をダブルクリックすると、その行のユーザーのプロフィールを標準ブラウザで表示
  • グリッド表示の仕様の関係で、ユーザーの「自己紹介」文字列は…
    • 改行は「 」(全角空白文字)に置換(改行文字以下が次の行に表示されるのを防ぐため)
    • 「,」は「、」に置換(「,」以下が次の列に表示されるのを防ぐため)

■ソースコード

※「OAuth認証設定」部分を、事前に取得した「コンシューマ・キー」と「コンシューマ・シークレット」、「アクセストークン」と「アクセストークンシークレット」に書き換えて実行して下さい。

#-----------------------------------------------------------------------
# OAuth認証設定
#-----------------------------------------------------------------------
# Twitterにアプリケーション登録した際に発行された
# 「コンシューマ・キー」と「コンシューマ・シークレット」を設定
CONSUMER_KEY=「****」。
CONSUMER_SECRET=「****」。
# 「アプリケーションのアクセス許可」&認証で発行された
# 「アクセストークン」と「アクセストークンシークレット」を設定
OAUTH_TOKEN=「****」。
OAUTH_TOKEN_SECRET=「****」。
#-----------------------------------------------------------------------


!「nakotter.nako」を取り込む
なこったークライアントとはNakotter。
そのoauthのコンシューマのトークンキー = CONSUMER_KEY。
そのoauthのコンシューマのシークレット = CONSUMER_SECRET。
そのoauthのトークンキー = OAUTH_TOKEN。
そのoauthのシークレット = OAUTH_TOKEN_SECRET。

ユーザーグリッドとはグリッド。
ユーザーグリッドについて
 レイアウトは「全体」

ユーザーリスト=「ユーザー名,ユーザ名称,紹介文」。

ブロックリスト=なこったークライアントからブロックユーザ一覧取得
ブロックリストを反復
 紹介文は、対象@`description`を出力変換処理。
 ユーザーリストは、「{ユーザーリスト}{~}{対象@`screen_name`},」&
 「{対象@`name`},{紹介文}」

ユーザーグリッドのアイテムはユーザーリスト。
そのダブルクリックした時は~
 それはユーザーグリッドのテキスト。
 ツイートURL=「http://twitter.com/{それ\0,0}」。
 ツイートURLを起動。#ブラウザが起動

●出力変換処理(対象文字列を)
 対象文字列は、対象文字列の「(\r\n)」を「 」へ正規表現置換。
 対象文字列は、対象文字列の「,」を「、」へ正規表現置換。
 #対象文字列をメモ記入。
 対象文字列で戻る。



【関連リンク】

 ちなみに、自分がブロックしているユーザーの一覧を取得できるサービスとしては、代表的なものに以下があります。