nDiki : RSS

RSS - RDF Site Summary / Really Simple Syndication

スポンサード リンク

2013年3月4日 (月)

ぼちぼち Twitter API 1.1 対応 (Net::Twitter::Lite で)

さくらのレンタルサーバ

  my $response
    = URI::Fetch->fetch(
    "http://api.twitter.com/1/statuses/user_timeline.rss?user_id=$id&count=200"
    ) or die URI::Fetch->errstr;

とかレガシーなコードが動いているの(2007年11月に書いた*1)で、Twitter API 1.1 に対応せねば。

Net::Twitter::Lite を使うか。Net::Twitter::Lite を cpanm で home の下にインストール

 curl -LO http://xrl.us/cpanm
 chomod 755 cpanm
 cpanm -l /home/naney/local/libperl-twitter Net::Twitter::Lite

で自分の Tweet を取ってくるのはだいたいこんな感じ。

 #!/usr/bin/perl

 use warnings;
 use strict;
 use HTTP::Date;
 use Net::Twitter::Lite;

 use lib
   qw(/home/naney/local/libperl-twitter/lib/perl5 /home/naney/local/libperl-twitter/lib/perl5/i386-freebsd-64int);

 my $consumer_key        = 'aaa';
 my $consumer_secret     = 'bbb';
 my $access_token        = 'ccc';
 my $access_token_secret = 'ddd';
 my $id                  = 自分の Twitter アカウントの ID(数字);

 my $twitter = Net::Twitter::Lite->new(
   apiurl           => 'http://api.twitter.com/1.1',
   legacy_lists_api => 0,
   consumer_key     => $consumer_key,
   consumer_secret  => $consumer_secret
 );

 $twitter->access_token($access_token);
 $twitter->access_token_secret($access_token_secret);

 my $timeline = $twitter->user_timeline(
   {
     count       => 200,
     user_id     => $id,
     include_rts => 'true'
   }
 );

 foreach my $tweet (@$timeline) {
   my $time     = $tweet->{created_at};
   $time =~ s/\+0000/UTC/;
   $tweet->{_created_at} = HTTP::Date::str2time($time);

   # use $tweet here.
 }

[ Perl ]

*1RSSURL は去年修正

スポンサード リンク
[ 3月4日全て ]

2013年3月14日 (木)

今日のさえずり: 「デジタル小作人」というワードがあるのね

2013年03月14日

  • 09:31 Google リーダー衝撃的すぎる……。
  • 09:54 はてなRSS
  • 10:35 “Official Google Reader Blog: Powering Down Google Reader” http://t.co/DgYjW5Bbkj
  • 13:37 今週は昼休みとか放課後とか出歩いてしこたま花粉吸ってるので、今日はおとなしく社内にいる。
  • 13:40 座席温めてます。 (@ 株式会社ミクシィ (mixi, Inc.)) http://t.co/imGXw7u1zO
  • 13:57 “デンマークのテレビ局が「シリア、ダマスカス上空」の映像に間違ってアサシン・クリードの画像を使用 | 秋元@サイボウズラボ・プログラマー・ブログ” http://t.co/T5ilgftAOk
  • 14:23 「デジタル小作人」というワードがあるのね。
  • 14:42RSSリーダーの乗り換え先は livedoor Reader で決まり!なのでデータ移行方法の紹介 - 941::blog” http://t.co/UtWTIq0JOH
  • 17:27 健歩大会の紙受けとった。
  • 23:07 CGI 的なパラメータを生環境変数から取ろうとしてウンウンしてる人、早めに気がついて止めるべきであった。
  • 23:23 おっと、床屋予約まだだった。
  • 24:00 @sseze バグは見切りをつけるんじゃなくてしっかり潰す。それ以前に何のために何をどこまで作るのかをきちんと見極める。
  • 24:05 黄色いのが光っているというのはピカチュウ世代。
  • 24:10 @sseze まあエンジニアっぽくていいですよね。
[ 3月14日全て ]

2013年6月12日 (水)

Twitter API v1 完全停止

ついに Twitter API v1 が完全停止となった。

あー、自分の Tweet 取得スクリプトも一部は v1.1 に合わせたのだけれど、RSS フォーマット版で呼んでて JSON 対応は先送りしてたんだよね。

ということで cron で動かしているのだけれど取ってこなくなった。週末修正するかなぁ。それともメンテナンス止めて Twilog のログダウンロードで済ますかなぁ。

[ 6月12日全て ]

2013年6月16日 (日)

Twitter API v1.1 対応とか、パイプでやりとりするの JSON でいいのとか

Twitter API v1.1 に対応していないスクリプトがあって、たしか OAuth 対応はしてあるけど RSS 形式を使っていたので JSON で取得して処理するようにしなければなーと思ってたんだけれど、そもそも OAuth 対応すらしてなかった。

なので Net::Twitter::Lite を使うように書き換え。

あと、いままで1つのスクリプトで「Twitter API を呼び出してタイムライン取得」「シリアライズしてファイルに保存」「Wiki 形式に整形して書き出し」をしていたんだけれど、UNIX 哲学に従って小スクリプトに分割してパイプで受け渡すように変更するなど。

スクリプト間のやりとりは構造化テキストデータなので JSON にしたんだけれど、若干これでいいのかなぁ感はある。テキスト形式だし最近の主流フォーマットではあるんだけれど、それでもシェルから見ると複雑な形式な気がするんだよね。でもあと軽量な構造化テキストフォーマットだと YAML ぐらいかなぁ。

[ 6月16日全て ]

2016年7月20日 (水)

Buffer の Awesome Plan のトライアルを開始してみた

IFTTTZapierBuffer をいじっていて、 BufferRSS フィード連携機能が気になったので Buffer の Awesome Plan のトライアルを開始してその機能を使ってみました。

BufferRSS フィード連携機能は、アイテムの URL と description をフェッチできる超簡易フィードリーダですね。そこからポストしたいものを選んでキューに入れる(あるいはすぐにポストする)という使い方をするようになっています。

IFTTTZapier で自動的に Buffer のキューに入れるようにしている場合は、キューに入ってから次の投稿スケジュールがくる前に必要に応じて再編集したり不要なものを削除したりする必要があって気ぜわしいのですが BufferRSS フィード連携機能の場合は好きなタイミングでその作業ができるので良いですね。

ただこの機能のために月 $10 (Apple の決済機能だと1,200円)はかなり割高に感じます。Free Plan とくらべて他には「キューに入れておけるのが10件から200件になる」「カレンダー機能が使える」「曜日別にスケジュールを変えられる」などがあるのですが、個人的にはどうしても欲しいものではありません。

ちょっと微妙ですね。RSS フィード連携機能を使っても必ず手作業が入るので、これなら直接キューに入れていくので私には十分な気もしてきました。

今日のさえずり: 念のためバッグモバイルバッテリを入れた GO

2016年07月20日

[ 7月20日全て ]

2017年3月16日 (木)

nNoteハイパー日記システム感覚【日記】

思い浮かんだことやちょっとしたノートテキストファイルに書き Unison でサーバに同期することで公開している nNote を使っていて、ハイパー日記システムの時ってこんな感じだったよなぁと最近思っています。

ハイパー日記システムを使っていた頃はまだ mixiTwitter もまだありませんでした。アンテナはあったけれど RSS フィードはまだぼちぼちといった頃。今とは違う牧歌的自由な感覚があったように思います。

[ 3月16日全て ]

2018年1月13日 (土)

Web 日記を書いたら Zapier を使ってmixi でつぶやくようにする

Web 日記を書いたmixiボイスにつぶやいてシェアできるように Zapier を設定してみました。

mixi はフィード出力のある Blog を「外部ブログとして日記に設定」することで新着をシェアする機能がありますが、mixi 上で書くmixi日記とは同時に使えません。私はmixi日記も書いているので、つぶやきでシェアするようにしました。

Zap

作成した Zap は以下のような感じ。フリープランで作れます。

image:/nDiki/2018/01/13/Zap.png

TRIGGER

RSS by Zapier」の「New Item in Feed」で新しいフィードアイテム(Web 日記記事)があれば Zap が動くようにします。

SEARCH OR CREATE

フィードのままだと URL が短縮されないので「Bitly」の「Find or Create Bitlink」で URL を短縮させます。「Create Bitlink」だとエントリの URL が既に短縮済みだった場合にエラーになってしまうので「Find or Create Bitlink」にします。

ACTION

つぶやくところは「Gmail」の「Send Email」を使います。

To には mixiメール写真付きつぶやき」での送信先メールアドレスを、Body にはつぶやきたい内容を設定します。フィードのタイトル(Step 1 の)や、短縮 URL (Step 2 の)などを組み合わせてテンプレートを作ります。

ちなみにここで To に mixiメール日記を書く」のメールアドレスを指定し、Subject にタイトルを、Body に本文を書くことでmixi日記に投稿してシェアするようにもできます。

それ IFTTT

IFTTT でも「RSS Feed」サービスと「Gmail」サービスを組み合わせればだいたい同じ構成のアプレットが作れます。

ただ IFTTTGmail サービスは From の切り替えができません。なので IFTTTGmail サービス連携させている Gmail アカウントのメールアドレスと mixi の登録メールアドレスが同じ場合はいけるはずですが、異なる場合は駄目だったりします(つぶやき・日記メールでの投稿は mixi 登録メールアドレスからのみ可能)。

ZapierGmail で設定している送信用メールアドレスをアクションで選択できます。 Zapier と連携させる Gmail アカウントで mixi 登録メールアドレスを From として送信できるように設定しておけば Zapier でその From を指定できます。

Zapier の方が細かい設定ができるし何が起きるかもわかりやすいし IFTTT より便利ですね。ただフリープランだと1カ月に実行できるタスク制限が結構厳しく、かといって一番安い有料プランでも $13.75/月するというのが悩ましくあります。もう少し安いプランがあると嬉しいなと。

[ 1月13日全て ]

2018年2月5日 (月)

今日のさえずり: はてなブックマークのマイホットエントリー RSS フィード配信が終了していたのか

2018年02月05日

[ 2月5日全て ]

2018年2月11日 (日)

Buffer を Awesome Plan にアップグレードした

image:/nDiki/2018/02/11/buffer-product-screenshot.png

2011年7月に登録して以来 TwitterFacebook予約投稿するのに使っていた Buffer を、フリーの Individual Plan から有料の Awesome Plan にアップグレードしました。月$10、今回は In-App Purchase (IAP) で支払うことにしたので月1,200円です。利用しているサブスクリプションサービスの中ではかなり高めですが、ずっと使っていて使い勝手的に代替できるものがなかったのでアップグレードを決心しました。

Awesome Plan にすると1ソーシャルアカウント当たり予約投稿しておける数が10件から100件に増やせるというのが今回のアップグレードの一番の目的です。多くても翌日分4〜5件程度しか予約していなかったのでフリーのアカウントでも今まで通り使う分には問題なかったのですが、数日先まで予約投稿してみたいと思いアップグレードして上限を増やすことにしました。

それから Awesome Plan にすると Content Inbox という RSS フィードのアイテムを投稿候補としてチェックする機能が使えるようになります。今までZapier で Buffer にいったん予約投稿しておいてから Buffer 上で再編集・投稿日時調整をしていましたが 、この作業が Buffer 上だけで出来るようになりました。この nDiki のフィードを投稿するの以外にも活用するつもりです。

(画像https://buffer.com/press の Press Kit より)

[ 2月11日全て ]

2018年2月12日 (月)

はてなブックマークからではなく Pocket からリンクをシェアするように変えてみる

Buffer を Awesome Plan にアップグレードして  RSS フィードのアイテムを投稿候補としてチェックする Content Inbox という機能が使えるようになりました。

これまで

はてなブックマーク」→「Zapier」→「Buffer (投稿予約)」→「Twitter

という流れで Twitter でリンクをシェアしていましたが、これを

「Pocket」→「Buffer (Content Inbox)」→「Buffer (投稿予約)」→「Twitter」→「はてなブックマーク

という流れに変更してみることにしました。いったん Pocket にガンガン入れておきコメントを付けるのは Buffer でとすることで、「収集」と「読む」「コメントをつける」を分けられていい塩梅な気がします。

[ 2月12日全て ]

About Me

Naney Naney (なにい)です。株式会社ミクシィで SNS 事業の部長をしています。

nDiki1999年1月に始めたコンピュータ日誌を前身とする NaneyWeb 日記(兼パーソナルナレッジベース)です。ちょっとしたノートは nNote にあります。

follow us in feedly

※内容は個人的見解であり所属組織とは関係ありません。

月別インデックス
Process Time: 0.086603s / load averages: 1.12, 0.37, 0.23
nDiki by WATANABE Yoshimasa (Naney, Google profile)
Powered by DiKicker