探求三昧(はてな支部) - 地震前兆/超常現象研究家・百瀬直也が地震・災害予知・防災・予言などを探求

地震前兆・超常現象研究家の百瀬直也が地震予知・災害・防災・予言などを探求するWeb/ブログ(はてな旧サイト)




ブログ−twitter間でデータを転送


さきほど、ついに実験が成功した。
次のルートで、データを相互に自動転送するしくみのことだ。

  1. twitter→ブログ(はてなダイアリー)【twtr2src
  2. ブログ(はてなダイアリー)→twitter【RSS2twitter】


この仕組みを使うと、次のようなメリットがある。

  1. twitterで、ブログ更新のお知らせが自動でできる。
  2. その日の自分のtwitterでの呟きをまとめて、ブログに自動で書き込んでくれる。

これで、twitterで自分をフォローしてくれている人には新規のブログ記事をお知らせでき、またブログ上では自分の呟きを公開できる。


この仕組みは、twtr2srcとRSS2twitterという2つの無料サービスを併用して実現している。
上記のルートで、ブログとtwitterのデータを相互にやりとりする。
そこまでは比較的簡単なのだが、問題は、このようになってしまうこと。

  1. twitter→ブログ(はてなダイアリー)→twitter
  2. ブログ(はてなダイアリー)→twitter→ブログ(はてなダイアリー


これでは、同じデータが巡り巡って元へ戻ってきてしまう。
(1)については、次の方法で解決できる。
RSS2twitterのフィルタ設定で、ある文字列が含まれるデータを転送する、または転送しないという設定をする。
これによって、上記の堂々巡りの問題は回避できる。
(2)については、twtr2srcの方ではフィルタをかけられないために回避できない。
twitter→ブログと転送する際に、ブログ→twitterと転送されてきたデータも渡ってしまう。
でも自動投稿されたブログ記事の一部なので、大目に見てくださいということで。^^;


詳細の手順を以下に示す。
ブログサービスの方で、RSS対応していることと、メール送信によるブログ記事の書き込みが可能であることが必須条件となる。
ちなみに、twtr2srcでは「Hatena」のフォーマットを設定できるが、それ以外のブログで同様のことができるかどうかはわからない。
この点がクリアされれば、はてなダイアリー以外のブログサービスでも使えるかもしれない。
また、RSS2twitterもtwtr2srcも英語のサイトであるため、多少の英語読解力は必要となる。
ここ以降は実際の手順を示しているだけなので、使ってみようと思わない人にとっては無用の情報でしょう。

RSS2twitterの使用方法

RSS2twitterは、OAuthというプロトコルを使って異なるサービス間で認証してサービスを利用する仕組みだ。
…ということの意味がわからなくても、なんとか利用することはできる。
RSSフィードならばどんなデータでもtwitterへ転送できるので、ブログ以外にもいろんな利用方法があるだろう。
初回の設定方法は以下の通り。

  1. RSS2twitterのサイトへアクセスする。http://rss2twitter.com/
  2. 自分のメールアドレスとパスワードを入力してサインアップする。(パスワードは忘れないように控える)
  3. RSS2twitterの画面上で、右上メニューから「My Twitter Acounts」をクリック。
  4. 右上の青い「Add acount」をクリック。
  5. 「Click here to go to twitter to authorize your account.」をクリック。
  6. 「Allow RSS2Twitter access?」と聞かれたら、「許可する」をクリック。twitterで認証される。
  1. RSS2twitterの画面上で、右上メニューから「My Feeds」をクリック。
  2. 右上の青い「Add feed」をクリック。

次に、「Add feed」画面で次のように設定する。

  1. RSS Feed URL:はてなダイアリーRSSフィードのURLを入力。(例:http://d.hatena.ne.jp/nmomose/RSS
  2. 「Include」欄で、「Title & Description」「Title」「Description」のいずれかを選択。ブログのタイトル+記事内容の両方を転送するならば「Title & Description」を選ぶ。
  3. 「Account(s) to update」で、設定するtwitterのアカウントを選択する。
  4. 「Allow RSS2Twitter access?」と聞いてきたら、「許可する」をクリック。


以下はフィルタの設定欄だが、必要な部分だけ設定する。

  1. 「Prefix updates with (optional)」:twitterへ転送する際のタイトルの先頭に付与する文字列。(私の設定:[BLOG])⇒このフィルタ、日本語を設定すると挙動不審になるかも。
  2. 「Include only updates with (optional)」:設定した文字列が含まれる記事のみ転送する。(私の設定:空欄)
  3. 「Exclude only updates with (optional)」:設定した文字列が含まれない記事のみ転送する。(私の設定:twitter-)
  4. 「Save」をクリックして設定内容を保存する。


※追記(2009/012/06)
RSS2twitterが正常動作してくれなくて、いろいろ試行錯誤してわかったのは、どうも上記のIncludeとExcludeのフィルタが逆に動作しているようだということ。
なので、現時点では「twitter-」を「Include only updates with (optional)」の方に設定してしのいでいる。


これによって、私の設定例では、次のような動作となる。

  1. 記事タイトルに[囀り]を含むデータ(twitterはてなダイアリーへ転送されたもの)を転送しない。
  2. 上記以外のデータ(通常のブログ記事)をすべて転送する。


これで、ブログに記事を書き込む度に、RSSフィードの更新があれば、それがtwitterへ自動で書き込まれる。
どのくらい時間がたった後でtwitterへ書き込まれるかは不定で、早ければ30分以内。


下記のブログ記事でも、RSS2twitterの使い方を解説している。


twitterでは@rss2twitterのアカウントができていて、私もフォローしているが、まだ一度も呟かれていない。
ちなみに、この手のサービスでは「TwitterFeed」が有名だが、フィルタ機能がRSS2twitterよりも弱い。
特定の文字列を「含まない」フィルタ設定ができないのだ。
これができないと、ここで紹介しているワザは使えない。
なので、RSS2twitterに乗り換えたという経緯がある。

twtr2srcの使用方法

twtr2srcは、次のような機能をもっている。

  1. あるアカウントのtwitterのログを1日単位でまとめて整形する。(画面上で閲覧可能)
  2. 整形されたtwitterログを、ブログサービスのメール自動投稿機能を使ってブログ記事として投稿する。


初回の設定手順は以下の通り。

  1. twtr2srcのサイトへアクセスする。http://twtr2src.ogaoga.org/
  2. 右上の青い「Sign In as twitter」ボタンをクリック。
  3. 「Allow twtr2src access?」と聞かれたら「許可する」をクリック。OAuth経由で認証される。


以下は、twtr2srcの画面での設定内容。

  1. 右上メニューの「Settings」をクリック。
  2. 「Format」タグを選択。
  3. 「Sorting order of timeline」:「Morning to night」を選択(上から下の順に並べる)
  4. 「Title format」:ブログタイトルのフォーマットを設定する。私の例:[BLOG]twitter-呟き %y/%m/%d %a (詳しくは上記欄の右側にある「Format...」をクリックすると設定例が表示される)
  5. 「Head of line」:不明(設定しなくても良い?)
  6. 「Hide @reply」:「@アカウント」の呟きを転送しない場合は、チェックを入れる。
  7. 「Show image」:twitterの画像を表示させるには、チェックを入れる。
  8. 「Save」をクリックして設定を保存する。
  9. 「Auto posting」をクリック。
  10. 「1. Send a confirmation number」の「Mail address」に、ブログ投稿用メールアドレスを設定。
  11. 画面下にある[ Send a test mail now... ]をクリック。


これで、メール自動投稿の設定が問題なければ、確認用の「Confirmation number」がブログに書き込まれる。

  1. ブログ上の「Confirmation number」をメモする。
  2. ブログ記事を削除する。
  3. twtr2srcの「Format...」画面に戻り、「2. Enter the confirmation number」の「Confirmation number」欄に、メモした確認番号を設定する。
  4. 「Auto posting」:「ON」を選択。


次に、「Format...」画面の「3. Set the preferences」に、以下のように設定する。

  1. 「Format」:「Hatena」を選択(はてなダイアリー利用の場合)
  2. 「Time Zone」:「GMT+09:00」を選択。
  3. 「Save」をクリックする。


以上で、ブログ自動投稿の設定が完了。
以下のブログでも、twtr2srcの使い方を解説している。


これで、RSS2twitterとtwtr2srcの設定に問題なければ、ブログとtwitterの相互のデータ転送が可能になっているはず。
twtr2srcでは、毎日決まった時間(18:00?)に、twitterの呟きがあればブログへ書き込まれるはずだ。

追記(2009/12/06)

現時点で、いろいろやってみたが、やっぱりうまくいかない。
RSS2twitterのフィルタ機能に問題があるようだ。
まず、「Exclude updates with」のフィルタが逆に動作している(「Include only updates with」と同じ動きになる)。
また、2バイト文字を設定しても正常にフィルタされないのかもしれない。
現時点で、同じことをやるにはRSS2twitter以外の選択肢はないので、これを使い続けるしかない。
前述のRSS2twitterの設定の説明を修正しておいた。


Copyright (C) 2004-2020 Naoya Momose - 百瀬直也. All Rights Reserved. Email