bot

Operaエクステンション配布サイトの新着フィードを配信するTwitter botを作成!

Opera Extensions botスクリーンショット
Opera Extensions botスクリーンショット posted by (C)kyu3

Operaエクステンションの公式配布サイト「拡張機能リスト」の新着フィードを配信する Twitter bot を作成しました。興味のある方はフォローしてみて下さい。


Twitter:Opera Extensions bot
Kyu3's Twitter bot ポータル : Operaエクステンション非公式bot公式ページ・・・bot の説明ページ。

関連情報:Kyu3's Blog : 私が使っているOperaエクステンション(2011年9月) #Opera_JP
関連情報:Kyu3's Blog : 私が使っているOperaエクステンション(2011年5月) #Opera_jp

中部電力「でんき予報」の情報を配信する"非公式"botを2つ紹介!

中部電力 でんき予報 (非公式)botのスクリーンショット
中部電力 でんき予報 (非公式) posted by (C)kyu3

6/27~始まった中部電力「でんき予報」の情報を配信する"非公式"botを2つ見つけたので、紹介します。


1. 中部電力 電気予報 (非公式)

「電力需要がピークになる時間帯」や「需給の割合」、「需給逼迫状況を表す3段階表示(『安定した需給状況』・『やや厳しい需給状況』・『厳しい需給状況』)」などの情報を配信する、"非公式"bot。更新頻度は、でんき予報の3段階表示が更新される頻度と同じ、1日2回(8時頃と18時頃)。アイコンも、直前の更新情報の需給割合に合わせて、変化します。

ちなみに以下のツイートは、昨日(7/1)の朝、投稿されたものです。

今日(金)の中部電力需給予測が14:00~15:00のピークに、約2170万kW/2461万kW(88%)に7:37に更新されました。
安定した需給となる見込み。
前日実績-204万kW。
#setsuden #84ma #teiden #chudenless than a minute ago via 中部電力 電気予報BOT (非公式) Favorite Retweet Reply





2. 中部電力 電力使用量報告 (非公式)

「1」の『中部電力 電気予報 (非公式)』よりも詳細な電力使用量などの情報を配信している"非公式"bot。でんき予報のページに表示されている1時間ごとの電気使用量や、それとピーク時の電気使用量の割合などを知る事ができます。更新頻度は1時間置き。なおこちらのbotは、1時間ごとの電気使用量とピーク時の供給電力の割合に合わせて、アイコンが変化します。

ちなみに以下のツイートは、今日(7/2)の午前2時30分頃に投稿されたものです。

1:00~2:00の中部電力使用量は約1239万kW/2153万kW(58%)でした。
先週より約118万kW、昨日より約163万kW節電できました。
#setsuden #84ma #teiden #chudenless than a minute ago via 中部電力 電力使用量BOT (非公式) Favorite Retweet Reply





PS:
上記の2つのbotを作った @antungame さんは、中部電力の他に「東京電力」や「東北電力」、「関西電力」のでんき予報や電力使用量の情報を配信する"非公式"botも、作成しているようです。それらについて知りたい方は、以下のリンク先ページをご覧下さい。


関連情報:中部電力|中部電力でんき予報
関連情報:中部電力も「でんき予報」開始(6/27~)!! #chuden - Kyu3's Blog
関連情報:夜間とお盆は節電不要!7月中旬と8月下旬は、生活や健康に支障をきたさない程度に少し節電を!! #chuden - Kyu3's Blog


追記(2015/2/24):
それぞれの Twitterアカウントの説明欄に、Twitterウィジェットを追加しました。

twitterfeedを使ったTwitter botの作り方

Twitterfeed:トップページのスクリーンショット
Twitterfeed:トップページのスクリーンショット posted by (C)kyu3

RSSフィードを Twitter などに投稿できるWEBサービス「twitterfeed」。このサービスを使った Twitter bot の作り方を、今回書こうと思います。なお予め bot として利用する Twitter アカウントを取得し、ログインしておいて下さい。
(※Twitterfeed は、2016年10月にサービスを終了しました。)

<目次>
1.アカウント取得と"Open ID"によるサインイン
2.フィードの登録と設定
3.Twitter アカウントの登録と認証作業
4.フィード配信方法の編集や配信停止、フィードの削除
5.Tips


1.アカウント取得と"Open ID"によるサインイン

twittereed の新規アカウントの取得方法は、普通のWEBサービスと同じで"ユーザーネーム"や"個人情報"などを登録する方法と、「Open ID」を使った方法の2種類あります。前者は先の記述にもありますが、他の普通のWEBサービスと同じなので説明を省略し、後者(Open ID)を使った方法について記述しようと思います。

その前に、日本人の利用者が多い Open ID に対応したサービスを挙げると、「Google アカウント」(Gmail や Google カレンダーなど)や「Flickr」、「Blogger」などが挙げられます。これらのアカウントを持っていれば、twitterfeed のアカウントをすぐに取得できます。
一方「Yahoo! Japan」や「livedoor」も Open ID に対応していますが、これらの場合は予め、専用の Open ID を取得する必要があります。詳しくは以下のページをご覧下さい。
OpenIDとは? - Yahoo! JAPAN
http://openid.yahoo.co.jp/

livedoor Auth OpenID
http://auth.livedoor.com/openid/

それでは本題に戻して、twitterfeed のアカウント取得方法について、記述します。
twitterfeed のトップ画面↓
twitterfeed

Open ID を使ってアカウントを取得するには、トップページ左下の「ログイン」ボタンの下にある『Sign In with Open ID』をクリックします。すると、以下のようなポップアップが表示されるので、Google アカウントを用いる場合は「Google」ボタンを、Flickr アカウントを用いる場合は「Flickr」ボタンを、Yahoo! Japan および livedoor の Open ID を用いる場合は、右下の「Open ID」ボタンをクリックします。

『Sign In with Open ID』クリックで表示されるポップアップ↓
twitterfeed(Open ID)

すると Google アカウントなら Google の認証ページが表示されるので、そこで認証作業(パスワードの入力等)を行います。これは Flickr や Blogger でも同じだと思います。
一方 Yahoo! Japan と livedoor の場合は、新たに Open ID を入力する画面がポップアップ内に表示されるので、そこに Open ID を入力し、「Sign In」ボタンをクリックします。すると、それぞれのWEBサービス(Yahoo! Japan なら Yahoo! Japan)の認証ページに移動するので、そこで認証作業を行います。

以下の画像は、Google アカウントでアカウントを取得した場合に表示される画面です。

Google アカウントでアカウントを取得しようとした時に表示される画面↓
twitterfeed(Open ID、Google)

なお認証作業がうまく行き、アカウントが取得できると、すぐに配信するフィードの登録ページが表示されます。

あと上記のアカウント取得手順と、2回目以降に twitterfeed にログイン(サインイン)する方法は、まったく同じです。


2.フィードの登録と設定

フィード登録画面↓
twitterfeed(Edit Feed)

アカウントを取得すると、まずフィード登録画面(上の画像)が表示されます。ここでは、フィード名(『Feed Name』)とRSSなどのフィード(『RSS Feed URL』)を登録します。なおフィード名はあくまで"管理用"なので、ここに書き込んだ内容が、Twitter bot に投稿される訳ではありません。また文字数に制限があります。
あとフィードURLを入力した状態で入力欄右側にある『test rss feed』ボタンをクリックすると、そのフィードが受信可能かどうかチェックできます。また『Active』のチェックを外すと、bot への配信が行われなくなります。

ここで一旦話をフィードの登録から、"配信しているフィードの管理"に変更しますが・・・twitterfeed では、フィードの管理画面の事を「Dashboard」と呼んでいます。上記のフィード名とは、この画面の時に表示されるものです。以下は Dashboard のスクリーンショットです。

フィード管理画面「Dashboar」↓
twitterfeed(Dashboard)

ちなみに2回目以降にログイン(サインイン)した時に表示されるのも、この Dashboard です。

また話をフィード登録画面に戻します。フィード名とフィードURLを登録して、ページ下部の『Continue to Step 2』をクリックすると、配信する Twitter bot アカウントの登録・認証作業へと移ります。

ただし実際 Twitter bot に投稿される数やその内容は、以下のようになります。

  1. フィードのチェック(更新確認)は、1時間に1回行われる。
  2. Twitter に投稿されるのは、「1」のチェックで確認したものの中で、最新のもの1つのみである。※a
  3. Twitter への投稿内容は、『タイトル + 本文のうちの最初の数行 + ページURL』。
  4. 「3」の投稿内容のうち、「ページURL」は Bit.ly で短縮される。

※a.例えばブログ記事を登録し、更新フィードに"3つの記事"があった場合、もっとも最新の記事(時間的にもっとも後に書かれた記事)だけが投稿されます。

上記の内容で構わない場合は、そのまま『Continue to Step 2』をクリックして下さい。しかしそうでない場合は、ページ下部の『Advanced Settings』をクリックして下さい。すると詳細設定画面が表示されるので、そこで上記の配信条件等々が変更できます。

詳細設定画面「Advanced Settings」↓
twitterfeed(Edit Feed、Advanced Setting)

詳細設定画面では、以下の項目が変更・設定できます。

  1. Check for new posts:更新確認頻度。頻度は30分~24時間おきまで。
  2. post up to ~ new update(s) at a time:投稿される記事数。1回の更新確認につき1~5個。
  3. Post Content Include:投稿内容。選択できるのは、「記事タイトルのみ」・「記事タイトルと本文数行」・「本文数行」の3つ。
  4. Post Link:投稿内容にリンクを含めるかどうか。
  5. Shorten link through:「4」にチェックを入れていると、投稿される記事のリンクを短縮するURL短縮サービスが選択できる。Bit.ly のアカウントを持っていると、更に細かな設定が可能。
  6. Post Sorting:更新確認の仕方(?)。「pubDate」と「GUID」の2種類から選択可能。※b
  7. Post Prefix:投稿内容の文頭に付ける文字列の設定。例えばブログの記事を配信する時この欄に「ブログの更新です:」と言う文字列を入力・設定しておくと、Twitter bot に「ブログの更新です:"記事タイトル" + "本文の一部" + "記事URL"」と言った具合に投稿されます。上限は20文字まで。※c
  8. Post Suffix:投稿内容の文末に付ける文字列の設定。上限は20文字まで。※c
  9. Keyword Filter:フィードのタイトルや本文内に特定のキーワードが含まれた時のみ、投稿するように設定できます。なお複数のキーワードを設定する場合は、半角スペースで区切って下さい。

※b.「pubDate」は、日付けや時間などのデータから更新確認を行う方式のようです。初期設定は「pubDate」になっています。よく分からない人は、この設定は変更しない方が良いです。
※c.ただし全角の文字数が多いと、文字化けする事があるようです。(以下 Tips 参照)


3.Twitter アカウントの登録と認証作業

フィード登録後、ページ下部の『Continue to Step 2』をクリックすると、どのサービスに配信するか設定する画面が表示されます。設定できるサービスは、Twitter の他に「Facebook」や「Laconica」などがあります。今回は Twitter に配信するので、ここでは「Twitter」を選択して下さい。すると、以下の画面が表示されます。

配信先 Twitter アカウントの登録・認証画面↓
twitterfeed(New Twitter Service)

初めて登録する場合は、「Authenticate Twitter」ボタンを押します(※このボタンを押す前に、予め配信先となる Twitter アカウントにログインしておいて下さい)。すると Twitter の認証ページ(下の画像)へと移動するので、ここで「許可する」ボタンを押すと、Twitter側の登録サービス認証が完了し、配信可能となります。

Twitter 認証画面↓
Twitter(oAuth)

あとは twitterfeed の画面案内に従い、配信先 Twitter アカウントの登録・認証画面下部の「Create Service」ボタン → 確認画面下部の「All Done!」ボタンを押すと登録が完了。登録したフィードが Twitter アカウントに配信されるようになります。

なお、初めてでなく2個目以降のフィードの登録や、一度登録したフィードを再設定し直した時は、配信先 Twitter アカウントの登録・認証画面の『Authenticated Twitter Account』のプルダウンメニューの中から、配信する Twitter アカウントを選択(以後は1回目と同じ)する事で、配信先を登録する事ができます。


4.フィード配信方法の編集や配信停止、フィードの削除

2回目以降に twitterfeed にログインした場合は、「Dashboard」が表示されます。Dashboard では、新しいフィードの登録や既存のフィードの編集および配信停止、またはフィードの削除が実行できます。それぞれの方法は、以下の通りです。

4-a. 新規登録
フィードを新規登録するには、Dashboard 右上に表示される「Create New Feed」ボタンを押します。(※以後は上記の初めて登録した時と同じです。)

4-b. 配信方法の編集
既存の配信方法や配信先の Twitter アカウントを変更するには、それぞれのフィードの『edit』メニューをクリックします。(※以後は上記の初めて設定を編集した時と同じです。)

4-c. 配信の停止
登録したフィードの配信を停止するには、まずそれぞれのフィードの『edit』メニューをクリックします。次に表示されるフィード登録画面のフィードURL欄の下にある、「Active」のチェックを外します。そして「Continue to Step 2」ボタンをクリックし、以後はフィードを登録した時と同じように進んでいきます。

4-d.フィードの削除
登録したフィードを削除するには、まずそれぞれのフィードの『edit』メニューをクリックします。次に表示されるフィード登録画面の右下にある「Delete Feed」ボタンをクリックすると、削除する事ができます。


5.Tips

上記の内容以外で twitterfeed で Twitter bot をやる際に知いた方が良いと思う事を、以下にまとめました。なお下記の内容は、全て私の"経験則"です。そのため、必ずしも正しいとは言えないかもしれません。

  1. 時々配信されないフィードがある。
  2. 配信されるフィードの数は、少ない方が安定して配信される。
  3. 接頭語(Post Prefix)と接尾語(Post Suffix)の文字数制限の上限は、必ずしも正しくはない。

まず「1」についてですが、なぜか時々、特定のフィードが配信されない事があります。これは twitterfeed に問題があるのか、それとも登録しているサイトのフィードに問題があるのか、あるいは Twitter に問題があるのかは分かりません。そのため確実に配信しているかどうか、時々チェックした方が良いと思います。

次に「2」についてですが、現在私は twitterfeed を使った bot を、6つ運営しています。それらを比較すると、配信登録しているフィードの数が少ない方が、きちんと配信されているように思われます。つまり配信登録しているフィードが少ない方が、「1」のような事態が起きにくいようです。そこでもし登録しているフィードのうち、長い間更新されないものがあったら、その配信を停止(または登録を削除)した方が良いと思われます。
(ただどうしてもそのフィードを配信したいのであれば、例えば RSS リーダーに登録しておき、更新があった時だけ Twitter にログインし、手入力で投稿(配信)するのが良いのではないかと思います。)

最後に「3」についてですが、以下のスクリーンショットは、私が twitterfeed で配信している Twitter bot「名古屋市非公式bot」のツイートです。見て分かる通り、文頭の「名古屋開府400」の後が文字化けしています。

twitterfeedの接頭語で文字化け(拡大)


このツイートは「名古屋開府400年祭 公式ブログ」のフィードを配信したものなのですが、接頭語(Post Prefix)に『名古屋開府400年祭公式ブログ』、接尾語(Post Suffix)に『#nagoya400』と設定しました。いずれも上限の20文字を超えていないのですが、なぜか接頭語の後半部分が一部消えたうえ、一部文字化けしました。

色々原因を考えてみたのですが、・・・・・例えば「"20文字"と言うのは"半角20文字"なのではないか?」あるいは「接頭語と接尾語を足して20文字なのではないか?」あるいは「ブログの記事のタイトルと本文の一部が含まれており、それがかなりの文字数を占めてしまったのでこうなった」など・・・・・。しかしどれが正しいのか、あるいは他に原因があるのかは分かりませんでした。
しかしこの事から推測すると、接頭語および接尾語の文字数制限は、必ずしも上限20文字ではないようです。そのため、あまり長い文字数の接頭語(または接尾語)を設定しない方が良いと思われます。
※調べてみたところ、接頭語は日本語(全角)だと「6文字」までのようです。それ以上入力すると、文字化けするようです。ちなみに7文字目が半角だと、入力できるようです。

PS:
配信したいフィードが自分のブログであるならば、「twitbackr」と言うサービスもあります。こちらはブログの更新pingを使って更新を Twitter に投稿する方式です。


追記:
twitterfeed にフィードを登録しているところを撮影したデスクトップ・キャプチャー動画を、YouTube で見つけました。言葉は"英語"ですが、参考になると思います。




追記:
接頭語(Post Prefix)に関する記述を追記しました。


追記:
私が運営しているTwitter bot一覧ページを作りました。良かったら見てみて下さい。

Twitter botアカウント一覧
http://www.geocities.jp/iic_penguin/twitter_bot.html(※削除済み)


追記(2013/11/27):
私が運営していた Twitter bot の一覧ページを移動させたので、以下にリンクを掲載しておきます。なお現在は、全ての bot の更新・運営を、終了しています。

Kyu3's Twitter bot ポータル : Twitter bot一覧ページ
カテゴリー
記事検索
管理者のプロフィール
Twitterアイコン案名前(ハンドルネーム)
「Kyu3」

プロフィール(Profile)
ギャラリー
  • 多機能な写真・動画撮影&編集ができるiOSアプリ「Musemage」に感動!
  • 多機能な写真・動画撮影&編集ができるiOSアプリ「Musemage」に感動!
  • 多機能な写真・動画撮影&編集ができるiOSアプリ「Musemage」に感動!
  • 多機能な写真・動画撮影&編集ができるiOSアプリ「Musemage」に感動!
  • 多機能な写真・動画撮影&編集ができるiOSアプリ「Musemage」に感動!
  • 多機能な写真・動画撮影&編集ができるiOSアプリ「Musemage」に感動!
  • 多機能な写真・動画撮影&編集ができるiOSアプリ「Musemage」に感動!
  • 多機能な写真・動画撮影&編集ができるiOSアプリ「Musemage」に感動!
  • ヤマダ電機テックランド春日井店の閉店から解体→新店舗建設まで
  • ヤマダ電機テックランド春日井店の閉店から解体→新店舗建設まで
  • ヤマダ電機テックランド春日井店の閉店から解体→新店舗建設まで
  • ヤマダ電機テックランド春日井店の閉店から解体→新店舗建設まで
  • ヤマダ電機テックランド春日井店の閉店から解体→新店舗建設まで
  • ヤマダ電機テックランド春日井店の閉店から解体→新店舗建設まで
  • ヤマダ電機テックランド春日井店の閉店から解体→新店舗建設まで
  • ヤマダ電機テックランド春日井店の閉店から解体→新店舗建設まで
  • ヤマダ電機テックランド春日井店の閉店から解体→新店舗建設まで
  • ヤマダ電機テックランド春日井店の閉店から解体→新店舗建設まで