jython + twitter4j でボット作成作業メモ

メモ書きをメモメモ残すだけのブログ

vim】コマンドの検索

「q:」コマンドでコマンドの履歴を閲覧できる
履歴を抜けるには「:q」ファイル終了と同じ
履歴も普通のファイルみたいにvimキーバインドで操作できる。
カーソル移動、検索、rによる置換まで確認。
エンターを押すとその時にカーソルの乗っていたコマンドが実行される。
置換で入力を間違えた時に便利でした。
http://nanasi.jp/articles/howto/editing/use-command-history.html

vim】自動補完

「Ctrl + p」で補完対象を表示
「Ctrl + n」で表示した候補から決定
http://www.webhtm.net/vim/inputsupport.htm

【twitter4j】使い方

twitter4jのAccessTokenを出力する方法
http://d.hatena.ne.jp/ymuto109/20110613/1307949741

java】オブジェクトの出力(シリアライズ)

jythonだと、読み込み時にはこの方法じゃダメだって分かった。後述
http://www.javaroad.jp/java_io7.htm

jython】例外処理の方法

try:
	例外を起こしそうな処理
except <対処するクラス名>:
	例外処理

だそうである。
http://d.hatena.ne.jp/yumimue/20071211/1197373464

jython】キャストの仕方

こんな感じにするらしい。

cnt = 10
cnt_str = str(cnt)

これってjythonの適当なクラスにも有効なんだろうか?
http://osima.jp/blog/python-cast-to-string/index.html
→ なんかjythonだとキャストいらないっぽい。

jythonシリアライズしたオブジェクトの読み込み

出力は普通にObjectOutputStreamで良いらしんだけど、
入力時にはObjectInputStreamじゃなくて
PythonObjectInputStreamを使わないといけないんだって。
http://onlamp.com/pub/a/python/2002/04/11/jythontips.html?page=2

jython】PythonObjectInputStream

シリアライズしたオブジェクトを読み込むときにエラー。
どこかで見つけた例文通りに以下のように記述

import org.python.util as util
...
ois = util.PythonObjectInputStream(...

するとjava.utilと衝突してクラスの読み込みに失敗した感じ

それならクラスパス全部指定してみると、

import org.python.util.PythonOjbectInputStream
...
ois = PythonObjectInputStream(...

そしたら、グローバル変数としてみなされてしまったらしい

よくわからないから衝突しないようにしてみた

import org.python.util as pyutil
...
ois = pyutil.PythonObjectInputStream(...

にしたらいけた気がする。
よくわかんない。

jython】1行を複数行に分ける

行末に \ を付けることで分離ができる。
http://www.glamenv-septzen.net/view/185

【twitter4j】

検索APIの使い方
http://d.hatena.ne.jp/AjakuPanic/20101027/1288187872

【twitter4j】

出力が文字化けってる
→ 表示環境の問題でした。
export LANG=ja_JP.UTF-8 で解決
http://d.hatena.ne.jp/ymuto109/20110930/1317370087

【twitter4j】

っていうかAPI対応表とJavaDoc読め
TwitterAPIとの対応表 http://twitter4j.org/ja/api-support.html
(このブログを書いてる時点で)最新版JavaDoc http://twitter4j.org/ja/javadoc/index.html