masuda_twのOAuth対応に苦労したって話

By mattz, 2010/06/15

増田ぶらうざとか増田viewerっつーのを作ったついでに@masuda_twという自動投稿するbotを動かしてたんだけど、OAuth対応しなきゃなぁ、ということでここ数日色々やってたんだけど、やっと解決したっぽいのでまとめ。

これまでは、Net::Twitterの2系を適当なディレクトリに展開してシンボリックリンクとか駆使してuse libしたりしてかなり無理矢理動かしてたんですが、そろそろもうちょっとちゃんとした環境にしようと思って、まずはローカルにCPANをインストールできるようにすんべと、otsune's FreeBSD memo :: ユーザー領域にCPANをインストールする方法とかさくらインターネットでCPAN - Charsbar::Noteとかを参考に色々やってどうにかCPANが使えるようになったので、Net::Twitterの3.13003をインストール。
次に実用! PerlでコマンドラインからTwitter投稿(OAuth対応) - perl-mongers.orgとかTwitterのbotをOAuthに対応させる - しばそんノートを参考に元のスクリプトを作り替える。

ここまでは特に問題はなかったのだが、何故かpostできない。いや、できるのだが日本語が通らない。というか日本語が通らないのだと言うことに気づくまで結構な時間がかかり、気づいてちょっと検索してみたらNet::Twitter-3.13003 と Net::OAuth-0.24 の組み合わせで日本語がpost出来ない - FloralCompany.logなどというページを見つけ、Net::OAuthモジュールの該当箇所を書き換えるという、ちょっと強引な手段でとりあえず対処。

ついでなのでこれまでURL->エントリ内容の順だったpostの文言をエントリ内容->bit.lyで短縮したURLの順に変更してみた。

増田Viewerにフィルタ機能+αを追加した

By mattz, 2009/12/03

事情により、公開停止しています。

増田Viewer(リリース時のエントリ)にフィルタ=いわ ゆるNGワード機能+αを追加しました。

改めて使用方法など説明してみたいと思います。

注意書き

ちなみに、この増田Viewerですが、基本的な動作はjQueryというJavaScriptライブラリを利用しているため、JavaScriptが無効な環境では利用できません。またCSSで表示/非表示の制御をしたりもしていますので、CSSが無効だったりUserCSSなどでカスタマイズしている場合、不具合に見えることがありますがそこまでは面倒みられません。自分で何とかしてください。

基本

増田Viewerの初期表示は、増田内トラックバックではない(と思われる)エントリの最新20件のタイトル(無題エントリの場合本文の1行目の一部)一覧を表示 します。そのエントリにトラックバックがついている場合は、タイトルの後ろに「/ TB(2)」などと付加 & 文字色がmaroonになります。

ページ最下部にある[more]というボタンを押すと、次の20件のエントリ一覧を取得し追加表示します。

一覧に表示されたタイトル一覧のタイトル部分をクリックすると、そのエントリの本文と、トラックバックがついている場合トラックバックエントリがツリー状に展開表示されます。なお、ページ最上部の「増田Viewer」の隣の「全て開く」というのをクリックすると、現在一覧に表示されている全てのエントリが展開されます。

検索機能

タブ状に表示された[検索]というところをクリックすると、過去のエントリも含めて、任意のキーワードで検索することができます。検索結果内に含まれる入力されたキーワードは、ハイライト表示されます。

複数のキーワードで検索する場合は半角の空白で区切って入力します。既定では、AND検索、つまり複数のキーワード全てを含む場合ですが、OR、つまり複 数のキーワードのどれかを含む場合にしたいときは、[その他条件設定]をクリックして、[OR]を選択してください。

また、キーワード以外にエントリ日付で検索することもでき、キーワードと日付で検索することも可能です。

なお、検索の結果は通常の一覧表示とは異なりツリー表示にはなりません。前後の流れなど確認したい場合は、[元増田]リンクから本家へどうぞ。

設定

今回設定できるようにしたのは、初期表示をタイトル一覧ではなくツリーを展開した状態で開くかどうか、と、フィルタの機能です。

フィルタ=NGワードを設定しておくとそのフレーズをタイトルや本文に含むエントリが一覧に表示されなくなります。トラックバックツリーの枝部分にNG対 象が含まれる場合は、その枝から下(というか先というか)が全て非表示になります。

なお、設定した情報はCookieを利用して保存していますので、複数のPC、ブラウザを使い分けていて、両方に設定したい場合は、それぞれのマシン、ブラウザで設定する必要があります。また、ブラウザ終了時にCookieをクリアするような設定にしている場合は、ブラウザ再起動時は設定が復元されませんので、ご注意ください。

設定が不要であれば、Cookieが無効であっても問題はありません。

よろしければご利用ください。

タグ

増田閲覧用webアプリの3つ目

By mattz, 2009/10/20

1個目。増田ぶらうざ

全てperl。未読/既読とか管理できるようにしたかった。でもすごく重い。ログが増えた今となっては使いものにならんかも。僕ももうまったく使ってない し。というかあまりに重くてログインすらできなかったので、とりあえず廃止にしました。検索機能だけはあとで復活させます。増田健作も停止していることですし。

2個目。増田ぶらうざlight(公開してないのでリンク外します)

左フレームに親エントリ一覧(php)、右フレームにトラックバックも込みでツリー上に表示(perl)。未読/既読を管理するのは諦めた。右フレームの表示はほぼ1個目から流用。ケータイからでも左フレームをブックマークしとくとそこそこ見られるので、今後も使うつもり。

んで、3個目。増田Viewer(公開してないのでリンク外します)

php+jQuery。jQueryで遊んでみたかっただけ。

2009/10/21 追記

ということで検索機能を追加した。IE6だと動かない(対応させる気もない)けど、いいよね?あれ?IE6でも動くぞ?作ったときは文 字化けして仕方なかったのに。意味分からん。

タグ

増田ぶらうざlight

By mattz, 2009/01/20

事情により、公開停止しています。

「増田ぶらうざ」はとても重いので軽量版の「増田ぶらうざlight」というのを作った。

http://w-mattz.xii.jp/masuda-light

えぇ、今時フレームです。いいんです。自分用だし。一応公開しますけど、一切の予告なく仕様が変わったり、なくなったりするかもしれません。要望とかもらったら実装するかもしれないし、しないかもしれません。

増田ぶらうざとの比較

  • ログインとかはしません。だから未読とか既読とかは一切管理できません。
  • 左側のメニューからリンクするのはroot(増田内でトラックバックしてないように見える)記事だけです。
  • メニューに表示するタイトル一覧は新しいものほど上で、レスはツリーっぽくタイトルだけぶら下げて表示
  • 本文が空っぽなエントリはメニューに表示しません。
  • メニューのタイトルの左に本文のおよその文字数が出ます。読むか読まないかの目安に。

調整

  • トラックバックがついてるエントリには「枝(数字)」という印をつけるようにしました。
  • その他タイトルのつけ方とか本文の長さとかトラックバックがついてるか、ついてないかなどによって、表示の仕方(class名)を変えるようにしました。
  • 左側でツリー表示するのはやめました。

追加

RSS提供開始。

タグ

増田ぶらうざ

By mattz, 2008/10/19

2009/10/20 公開中止に伴い追記

設計が悪いってのもあるんですが、重くて使いものにならないし、そもそもここ3ヶ月ほどはどなたも使ってない(使えなかったんだよな、多分)ようです し、うっかり登録しようとしてしまう人がいないとも限りませんので、公開を中止します。

保存されていた登録情報(ログインID、暗号化されたパスワード、どのエントリを増田ぶらうざで読んだか)に関しては、2009年10月31日をもって全て削除させてい ただきました

以下、元のエントリ。


こっそりTwitterに流したりしてたので一部気が付いてブックマークした方なんかもいましたが、「増田ぶらうざ」ってのを作ったので公開。

URLはhttp://w-mattz.xii.jp/masuda.cgi

要するにはてな匿名ダイアリーのビューアなんですが、機能的に不満があったので基本的には自分用として作りまし た。

よければ使ってみてください。

履歴とか

2009/10/20
公開中止。
2008/11/26
検索機能を追加しました。表示位置とかは暫定的なものです。
2008/10/30
訳あって色々作り直しました。機能的には少し落ちてます。
設定とかまとめて既読化が今はできなくなっています。近いうちに実装予定。
2008/10/22
ユーザ毎の設定画面を追加しました。今のところ設定項目は1つしかないです。
2008/10/21
エントリ一覧をタイトルで表示するようにし、その分、1ページの表示エントリ数を減らしました。他にも細かい調整いくつか。
2008/10/20
登録情報の削除機能を追加しました。
まとめて既読にする機能を追加しました。
各エントリ、と未読エントリ一覧にはてなブックマーク数とlivedoorクリップ数を表示するようにしました。
2008/10/19
aboutページ(プライバシポリシーとか)を追加。
2008/10/19
とりあえず公開

タグ

最近の梅干

By mattz, 2008/06/19

これ読んで思い出した。

本文省略

最近の梅干って甘味料入ってるやつが多いんだけどさ。あれ、なんなの?くそマズイし、塩分減らしてるせいで日持ちもしないし。馬鹿じゃねーの?

タグ

anondLDRize.jsを更にバージョンアップしました

By mattz, 2008/06/16

anondLDRize.js ver 0.0.4(最新版)

バージョンアップしないとか言った気もしますが。

0.0.3からの変更点

  • 「その場で返信」機能の追加。
  • 機能追加に伴ってデフォルトキーアサイン変更。

デフォルトのキーアサイン

K
前のエントリ(個別表示時は1つ新しいエントリ)を表示する
J
次のエントリ(個別表示時は1つ古いエントリ)を表示する
F
ページ内の最初のエントリを表示する(個別表示時は無効)
L
ページ内の最後のエントリを表示する(個別表示時は無効)
A
前の25件を開く(個別表示時は無効)
S
次の25件を開く(個別表示時は無効)
T
増田トップに戻る
R
Replyフォームの表示
O
ハイライトされたエントリを別ウィンドウ(タブ)で開く(個別表示時は無効)
C
個別表示時にトラックバックを全て展開(トグル)する(一覧表示時は無効)

anondLDRize.jsを更にバージョンアップしました

By mattz, 2008/06/04

anondLDRize.js ver 0.0.3(最新版)

ちなみにOperaのバージョンはBuild 10034でしか動作確認していません。9.2系にはgetElementsByClassNameがない、とかどっかで見た気がするので、多分動き ませんが、検証するつもりはゼロです。

0.0.2からの変更点

  • 最初/最後のエントリを表示するショートカット(デフォルトではF/L)を追加。
  • 個別表示時も前/次のエントリを開くを有効にした。
  • 個別表示時にトラックバックを展開(展開時は折りたたみ)するショートカット(デフォルトではC)を追加。
  • ハイライト中のエントリを別ページで開くためのショートカットのデフォルトをVからOに変更。
  • ソースコードを少し整理した。

どこからか要望でも来ない限り、多分もう大幅なバージョンアップはないと思います。バグ見つけたら教えてくれると嬉しいです。

anondLDRize.jsをバージョンアップしました

By mattz, 2008/06/04

さらに続くぞ。

anondLDRize.js ver 0.0.2(最新版)

変更点

  • キーアサインを変更可能にしました。あっ試してない。まぁデフォルトのキーアサインが動くんだから変えても動くだろ。
  • エントリリストの表示位置を、左・右・表示しないから選択できるようにしました。ちなみにデフォルトは表示しないです。増田ってトラックバック エントリ(タイトルが言及先増田のURL)が多いのでリスト表示しても大して意味ない。
  • エントリリストを左右いずれかに表示する場合の表示幅を変更できるようにしました。無茶な数字にすると大変見づらくなると思いますので、20~30 くらいがよろしいかと。

いずれもお使いの方が直接スクリプトを編集する必要があります。

コード的にまだまだスマートでない部分がたくさんあるので、そう言うのも含めてもうちょっとバージョンアップすると思います。

増田をさらに改造する

By mattz, 2008/06/03

増田を使いやすく(?)するuser.jsの続き。

anondLDRize.js ver 0.0.1(最新版)

はてな匿名ダイアリをLDRっぽいキーアサインで読み進めることができるようになるuser.js。有効なショーカットキー は以下の通り。

A
前の25件
S
次の25件
J
次のエントリ
K
前のエントリ
R
増田TOPに戻る
V
パーマリンクを別ウィンドウで開く

利用・再配布・改造(改善)しての再配布・紹介・ツッコミ歓迎。

追記

それと、前の「一覧表示に無理矢理メニューを表示する。」とは共存させないで下さい。