Net::Twitter::Liteでのupdate_media

難しかった.

Net::Twitterで,update_with_media(media[])を長らく使っていたけど,これはもうdeprecatedなので,今回のstream廃止と同時に使わないようにしようと思った.

upload(media) → update() で行けるはずなのだけど,Net::Twitterのドキュメントみても”media”が何なのかがよく分からない.

Net::Twitter::Liteだと,これは upload_media(media[])となっている.これなら今までと同じなので,使える.

$tw->{status} = $s;
$tw->{media} = [undef,$fname, Content_Type => $ftype, Content => $image];
$nt->update_with_media($tw);

みたいなのを,

$tw->{status} = $s;
$tw->{media} = [undef,$fname, Content_Type => $ftype, Content => $image];
$img = $nt->upload_media($tw);
$tw->{media_ids} = $img->{media_id};
$nt->update_with_media($tw);

としたら,update_with_mediaがHTTP::Messageのエラーを吐く.

$tw->{status} = $s;
$tw->{media} = [undef,$fname, Content_Type => $ftype, Content => $image];
$img = $nt->upload_media($tw);
$tw->{media_ids} = $img->{media_id};
$tw->{media} = undef;
$nt->update_with_media($tw);

で動いた.横着せずに$twと生のイメージを分離しておくべきだった,ってこと.

LaTeX文書からテキストだけを改行無しで取得する

LaTeX文書からテキストだけを改行無しで取得する

LaTeX文書からテキストを抜き出したい場面は結構あります.(私は主に英文校正に出す時ですが,世の中にはWord文書でしか受け付けてくれない○○なジャーナルとかあったりするので,Wordへの流し込みをするときにも必要ですね…) それを可能な限り手出しする量を減らしたい場合にどうすれば良いかのメモです.

pdftotextを使う

xpdfに付属するpdftotextを使います.Macなら,

$ port install xpdf-japanese

で一発です.

使い方ですが

$ pdftotext submit.pdf

とすれば,submit.txtにテキストが保存されます.
改ページ(^L)がいくつか残るのと,itemizeのポチが文字化けすることを除けば,テキスト自体の変換効率はとても高く,ほとんどそのまま使えます.

追記

xpdf には pdftotext が付属しなくなっていた.
替わりにxpdf派生プロジェクトのpopplerをインストールすればよい.

$ port install poppler

おわり.

あくあたん水槽監視・制御ユニット

あくあたん水槽監視・制御ユニット

IMG_7726こちらは2つめのRaspberry Piです.水槽や環境の状態をモニタして,照明・ファンの制御を行う部分です.センサーには温度センサーDS18B20が4基,大気圧センサMPL115A2が1基,湿度センサDHT11が1基搭載されています.また,MOSFETで3基の冷却ファンを制御し,ACリレーで3基のAC電源を制御できます.

IMG_7739裏側から,Raspberry Piを外した状態はこんな感じ.ad-hocに回路を追加してしまったので,きれいな基板ではありません.もっと小さい面積に詰められたはずなんですが…

あくあたん弐号機 (Raspberry Pi版)

あくあたん弐号機 (Raspberry Pi版)

IMG_7785あくあたん弐号機義体部はRaspberry Piで制御する移動型カメラ台+自動給餌器です.左側がUSBカメラ2基(広角+赤外線)で,この部分は上下動も可能です.

左右への移動はタイヤで行います.上下左右の動力にはLEGOの旧型モーターを2基使い,DRV8830によって制御しています.モーターの定格を遙かに下回る電圧しか与えられませんが,思いの外さくさく動きます.
Keep reading →