ラベル Twitter の投稿を表示しています。 すべての投稿を表示
ラベル Twitter の投稿を表示しています。 すべての投稿を表示

2011/01/28

ブログへの投稿を自動ツイートするサービスをfriendfeedからFeedBurnerに変更しました。



ブログへの投稿を自動ツイートするために、friendfeedを使っていましたが、ツイート内容にブログを更新した旨の表示が入れられないので、どうにかならないかと考えていました。FeedBurnerを使えば、【ブログ更新しました】の文字を入れることが出来たので、FeedBurnerに変更しました。friendfeedでも、よく調べれば、同様のことが出来るのかも知れませんが、わかりませんでした。

FeedBurner
http://www.feedburner.jp/

この設定でコメント付きで自動ツイートできます

設定画面の全体図

2011/01/24

ブログへの投稿を自動でTwitterにツイートできるように設定しました。



ブログを更新したことを、Twitterに投稿する場合、今使っているBloggerであれば、記事の下の方に表示している「Twitterで共有する」ボタンを押せば、ツイートできます。しかし、デフォルトでツイートされる内容にブログタイトルが含まれているため、ほとんど使っていません。

その代わりに、記事タイトルと「【ブログ更新しました】」の文字と、goo.gl URL Shortererで短縮したURLを手動でアップしていました。

もっと楽をしたいと思い、自動でブログの投稿がツイートできる方法を調べてみました。色々なサービスがありました。見つけた中から、friendfeedを使って、自動ツイートの設定をしました。

friendfeed
http://friendfeed.com/

まずトップページから、Twitterのアカウントでログインします。


ログインした画面の「設定」をクリックします。ダイアログが表示されるので、「Twitter」投稿の優先設定をクリックします。


Twitter 関連詳細設定画面にて、「Check 'Cc Twitter' box by default」「FriendFeed での会話ではなくソース サイトにリンクする(コメントには適用されません)」「 Post my FriendFeed entries on Twitter by default」にチェックを入れると、「以下サービスからのエントリーを投稿」の中の「以下で選択したサービス」の選択が出来るようになります。その状態で、自分のブログにチェックを入れます。最後に「保存を変更」をクリックします。


Twitterとfriendfeedの連携認証は必要です。


これで設定完了。あとは、ブログに投稿をするだけで、何もしなくても、ブログの記事タイトルと、短縮したURLをツイートしてくれます。これで少し楽になりました。

2010/12/26

Twitterのツイート数がなぜか2倍になって表示されます。以前にも同じ現象が起きました。



Twitterのツイート数がなぜか2倍になって表示されます。


現在、1963ツイートと表示されています。昨日までの正しいツイート数は972でした。以前にも同じ現象が起きました。2010/11/29にツイート数が倍になり、2010/12/12に元に戻りました。そして、今日また、倍の表示になりました。これは何なんでしょうか?

2010/12/18

Google App Engineを使って、OAuth対応のTwitterボットの作り方を調べてみました。まず、Twitter APIの操作から



以前、「ASE(Android Scripting Environment)で作成したPythonスクリプトから、OAuth認証を経てTweet出来ました。」の記事でAndroidアプリから、OAuth認証経由でのTweetが出来たので、今度は、Google App Engineで同じことをやってみます。


ASE(Android Scripting Environment)で作成したPythonスクリプトから、OAuth認証を経てTweet出来ました。
http://vivo-design.blogspot.com/2010/10/aseandroid-scripting.html

同様のことを実装されている方のサイトを色々と拝見しました。その中で、下記のサイトの説明がとても分かりやすかったので、その方法で試させてもらいます。

Google App Engineで手軽にOAuthアプリを作成!(Twitterとか!) - AppEngine-OAuth
http://0-oo.net/sbox/python-box/appengine-oauth

 

必要なファイルを確認します。
  • main.py
  • app.yaml
  • basehandler.py
  • appengine_oauth.py
  • appengine_twitter.py

まず、TwitterアプリケーションをTwitterアプリケーションプラットフォームに登録をします。今回は、赤枠の「vivo_bot_by_gae」というアプリケーションを登録しました。この画面は、登録後の画面ですが、新規に追加をする際は、下部にある「新しいアプリケーションを追加」をクリックします。


 アプリケーション登録申請画面が表示されるので、必要事項を入力します。この画面は設定後のものです。


「アプリケーションの種類」は、「ブラウザアプリケーション」を指定します。「コールバックURL」はユーザ登録をするロジックを用意して、そのURLを設定しなければいけません。今回の場合は、

http://vivo-red.appspot.com/oauth/
にて、Twitterへの認証を申請して

http://vivo-red.appspot.com/oauth/callback
にて、Twitter APIより送られてきた認証結果を記録する処理をしています。その後は、記録した認証情報を使って、アクセスしていきます。

よって、「コールバックURL」には
http://vivo-red.appspot.com/oauth/callback
を指定します。

必要な情報を入力後、「保存する」を押すと申請の登録が完了します。

Application Details画面で表示されるので、
  • Consumer key
  • Consumer secret
の値を控えておきます。


次に main.py を3箇所修正します。
  • Consumer key を設定
  • Consumer secret を設定
  • メッセージの表示の部分を自分用に変更
    msg += u'http://vivo-red.appspot.com/oauth/callback からこんにちは!'

下記が変更したソースです。
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
'''
Sample for AppEngine-OAuth on Google App Engine
 
See: http://0-oo.net/sbox/python-box/appengine-oauth
See also: http://apiwiki.twitter.com/OAuth-FAQ
'''
 
import logging
import wsgiref.handlers
from appengine_twitter import AppEngineTwitter
from basehandler import BaseHandler, h
from django.utils import simplejson
from google.appengine.ext import db
from google.appengine.ext import webapp
 
 
OAUTH_KEY = '*** ここにConsumer keyを設定 ***'
OAUTH_SECRET = '*** ここにConsumer secretを設定 ***'
 
 
class DemoHandler(BaseHandler):
 
  def demo_header(self):
    self.simple_header(u'AppEngine-OAuthのデモ')
 
    self.p(u'

AppEngine-OAuthのデモ

') def demo_footer(self): self.p(' ') self.p('
', True) self.p(u'このページは') self.p('') self.p(u'AppEngine-OAuth と ') self.p('') self.p(u'AppEngine-Twitter のデモです') self.simple_footer() class InitHandler(DemoHandler): def get(self): twitter = AppEngineTwitter() twitter.set_oauth(key=OAUTH_KEY, secret=OAUTH_SECRET) req_info = twitter.prepare_oauth_login() # request_tokenはcallbackされた後で使うのでDatastoreに保存しておく OAuthRequestToken(token=req_info['oauth_token'], secret=req_info['oauth_token_secret']).put() self.demo_header() self.p('') self.p(u'TwitterのOAuthログインへ', True) self.demo_footer() class CallbackHandler(DemoHandler): def get(self): twitter = AppEngineTwitter() twitter.set_oauth(OAUTH_KEY, OAUTH_SECRET) # TwitterからHTTP GETでrequest_tokenが渡される req_token = self.request.get('oauth_token') # Datastoreに保存しておいたreqest_token_secretを取り出す query = OAuthRequestToken.all() query.filter('token = ', req_token) req_tokens = query.fetch(1) # request_tokenとaccess_tokenを交換する acc_token = twitter.exchange_oauth_tokens(req_token, req_tokens[0].secret) # ここまで来ればOAuthを使ってAPIが使える。試しにユーザー名を取得 twitter.verify() name = simplejson.loads(twitter.last_response.content)['screen_name'] self.demo_header() self.p(u'こんにちは、' + name + u'さん!', True) self.p(' ') # 以後は再ログインせずにaccess_tokenを繰り返し使うことができる tw2 = AppEngineTwitter() tw2.set_oauth(OAUTH_KEY, OAUTH_SECRET, acc_token['oauth_token'], acc_token['oauth_token_secret']) msg = u'AppEngine-OAuth (on Python and Google App Engine) ' msg += u'http://vivo-red.appspot.com/oauth/callback からこんにちは!' tw2.update(msg.encode('utf8')) self.p(u'つぶやいたよ(自分のTLを見てね)', True) self.p(' ') if tw2.is_following('uresuji_books') == False: tw2.follow('uresuji_books') self.p(u'@uresuji_books をフォローしたよ', True) self.p(' ') self.p(u'最初のページへ戻る', True) self.demo_footer() #Model(s) class OAuthRequestToken(db.Model): token = db.StringProperty() secret = db.StringProperty() logging.getLogger() routing = [('/oauth/', InitHandler), ('/oauth/callback', CallbackHandler)] application = webapp.WSGIApplication(routing, debug=False) wsgiref.handlers.CGIHandler().run(application)
次に、Google App Engine Launcherを使ってアップします。
アプリを選んで、「Deploy」ボタンをクリックします。


Deploy Application to Googleの認証画面で、Emailとパスワードを入れて、「OK」ボタンを押します。


その後は自動でアップロードが始まり、動作状況がモニタされます。アップが完了すると、ウィンドウを閉じてもいいですよと、メッセージが表示されます。


用意が出来たサイトにアクセスをします。
「TwitterのOAuthログインへ」をクリックします。


Twitterへの認証許可の確認ページが表示されます。「許可する」をクリックします。


認証が完了し、Twitterユーザ名の取得と表示、そのTwitterユーザでのツイート、@uresuji_booksへのフォロー追加を実行した旨の表示がされます。


実際に動作したのかどうかを確認します。正常に動作していました。

ツイートの確認

 

フォロー追加の確認


これで後は、つぶやく内容、何をいつ、つぶやくかを設定していきます。

この内容を確認できるまでに、他にも、沢山のサイトに教えていただきました。ありがとうございます。

Twitter OAuth 自動化 with GAE/Py (Python-twoauth 版) - 混沌脳内
http://d.hatena.ne.jp/blaue_fuchs/20100926/1285497228

TwitterのbotをOAuthに対応させる
http://d.hatena.ne.jp/shibason/20090802/1249204953

TwitterボットをOAuthに対応させてみた - Google App Engine(Python)
http://blog.mudaimemo.com/search/label/google%20app%20engine

Google App Engine + Twitter + OAuthでTwitterにつぶやくためのメモ
http://blog.mudaimemo.com/2010/02/google-app-engine-twitter-oauth.html

GAE用のOAuthライブラリ simpleoauth-gae を作ってる

http://d.hatena.ne.jp/tagomoris/20100523/1274603964

python-twitter とついでに Mercurial を入れてみる

http://d.hatena.ne.jp/idemo/20100905/p2

Python-Twitter API構築
http://k-communication.sakura.ne.jp/blog/?p=83

2010/12/11

このブログ(Blogger)にFollow meのボタンを付けました。生成したコードを管理画面で貼り付けるときには、HTMLエンコードが必要です。



よく見る「Follow me」のボタンを、このブログに付ける方法を調べてみました。


付け方は、下記のサイトで教えていただきました。

Blogger でサイドに Twitter の Follow me のバッジを付ける
http://jutememo.blogspot.com/2009/12/blogger-twitter-follow-me.html

「Follow me」のボタンは、下記のサイトのサービスを利用して表示しているようです。

Twitter "Follow" Badge for your site/blog
http://www.go2web20.net/twitterFollowBadge/


このサイトで必要な設定をして貼り付けるコードを生成します。
Bloggerの管理画面にて、用意したコードを貼り付けます。


しかし、コードをそのまま貼り付けても、表示されません。タグの「<」や「>」をエンコードしないと、Bloggerでは貼り付けても反映されません。

HTMLエンコードフォーム
http://kawama.jp/php/encode_html.php

上記のサイトにて、 HTMLエンコードをしたコードを貼り付けます。


これでOKです。表示され、正常に動作しました。

2010/11/21

「今日のあなたにぴったりの名言を差し上げます。」というサイトを作ってみました。

「今日のあなたにぴったりの名言を差し上げます。」というサイトを作ってみました。

今日のあなたにぴったりの名言を差し上げます。
http://www.vivo-one.biz/fortune_telling/

占い(診断)のプログラムのソースが公開されていたので、そのソースを参考に「名言」を各人ごとに提示してくれるサイトを作ってみました。同じ名前を入力すると、いつも同じ「名言」が返ってくるのも面白くないので、日ごとに違う「名言」が返されるようにしてみました。

 


 「あなたにぴったり」と言ってはいますが、お遊びプログラムなので、軽い感じでお試しください。

占い(診断)のソースは、下記のサイトを参考にさせていただきました。

適正スポーツ診断 - 貴方に合っているのは野球?サッカー?テニス?それとも…
http://kunisan.jp/m/sports/index.php

返される「名言」については、色々な名言ツイートボットがある中で、@1meigen(名言太郎)さんのツイート内容を使わせていただきました。

@1meigen(名言太郎)さんのツイートされた名言の数は、3,500以上ありますが、現在は700程度の名言を格納させていただいてます。これくらいの数なので、データベースは使っていませんが、名言数を増やす場合は、データベースの利用も考えてみます。

@1meigen(名言太郎)さん
http://twitter.com/#!/1meigen

2010/07/05

「みんな情報の家畜」北野武さんの山陽新聞でのコラムを読んで感じたこと



北野武さんのコラム「ここがおかしいニッポン」(山陽新聞 2010/07/03)の中に、最近思っていることを上手く表現されていると感じた箇所がありました。

「みんな情報の家畜」

最近、自分が情報を探しているのではなくて、情報に探させられているのではないかと思うことがあります。Twitterを利用すると、今までのインターネット利用方法で取得できる以上の情報量が瞬時に得られるようになりました。ただ、その情報を得ることが目的になっているんじゃないかと思えてくることがあります。情報は自分のものにして活用してからが情報ではないのかと。今は情報も使い捨ての感覚で、「あ、それ知ってる」で、終わりみたいになってしまっているような気がします。

北野武さんのコラムで、私の心に響いたのは下記の箇所です。

「今の人たちは情報を探しまくるんです。自分で追いかけるから、たどりついた情報は、すごい情報だと思ってしまう。 --- 広告代理店をはじめ、いろんなところが、次はここに行かないといけないよとか、流れをつくっていくわけですよ。それにみんな家畜のように檻から檻へと動かされている」

最近、もやもやと感じていたことを、具体的な文章にして見せてくれました。

ただし、情報が本当に早く欲しい場面もあり、そのような時には、情報が早く取得できることがありがたい場面はあると思います。たとえば、先日のソフトバンクの孫社長のツイートに対するフォローの内容

「ホームページよりアナウンスが早い・・・ RT .@masason 再発防止対策中です。大変ご迷惑をおかけ致しました。本当に申し訳ありません。RT 予備サーバーが復旧しました。」

システムトラブル時には、一刻も早い情報の提供が必要です。それは、利用するユーザーにとっても、提供するメーカー、ベンダーにとっても同様です。そのような時に、早く大多数の人へ情報を提供するのに適していたのはWebサイトだったと思います。しかし、Twitterは、その比ではない速さで、大多数に情報を提供できます。その速さを求めることは、至極当然のことだと思います。

これからも、Twitterやインターネットを利用した情報は一般社会に溢れかえっていくと思います。情報に埋もれて生活をしていくのがあたり前になるのでしょうが、情報の家畜になることなく、情報に対して主体性を持って対応をしていきたいと思っています。

2010/06/07

Twitterが面白くなってくる時期について



Twitterが面白くなってくる時期について、始めた頃に、「フォローが100ぐらい付くと面白くなる」という記載をあちこちでみていました。それを信じて、「あまり面白くない」と感じていた時期を過ぎて100を超えたあたりから、本当に面白くなってきました。

まず、フォロワーがコンスタントに追加されてくるようになり、色々な人の考えに触れることができるようになりました。自分から求めても、接点は無いだろうと思われる方からのフォローが付くと、なんだか得した気分になれます。

自分のツイートにフォローが、ちょこちょこと付きだすと、さらに楽しくなります。


現状のフォロー数です。

2010/05/30

Python-Twitterモジュールを利用したツイート その2 HT-03Aの続き



昨日のエラー部分の検証

> HT-03AのASE上で動作させると、
> Twitter.pyのGetTemp CachePathのところでエラーが出ます。

HT-03AのPythonインタープリタのエラーメッセージを見ると
/tmpフォルダが無いので、展開できないと言っているだけのよう

/ase/extras/Python/tmp/

を作成する

再度、AndroidからPythonでTwitterに投稿すると、問題なく成功



Googleの検索キャッシュに、このページが「PYSSLA 使い方」で残っているようなので、その記事へのリンクを張っておきます。

IKEA神戸で買った「PYSSLA ビーズ」でピカチューを作ってみました。
http://vivo-design.blogspot.com/2010/10/ikeapyssla.html


2010/05/29

Python-Twitterモジュールを利用したツイート



AndroidからPythonでTwitterに投稿する の記事を拝見して、試してみました。

HT-03AのASE上で動作させると、Twitter.pyのGetTemp CachePathのところで エラーが出ます。では、まずWindows XPのPython2.6のインタープリタ上 で動作するのかを確認。

インタープリタにて
>>> import twitter
をすると、twitterモジュールはありません。と表示

python-twitter をダウンロードしてインストール

再度インタープリタにて
>>> import twitter
をすると、今度は、simplejsonモジュールが必要とのこと simplejson をダウンロードしてインストール

再びインタープリタにて
>>> import twitter
をすると、今度はエラーは出ず。 そのまま
>>> api = twitter.Api(username='username', password='password')
>>> status = api.PostUpdate(u"PythonのインタープリタからTwitter
モジュールを使ってのテストツイート")
を実行すると、ツイート完了。
Twitterにて正常に投稿、表示されていることを確認。

人気の投稿 (過去 30 日間)