COREBlog2 の moblog で複数写真に対応するスクリプト
(第2回)Zope/Plone開発勉強会が無事終了 にも書きましたが、私の勉強会での成果の一つに COREBlog2 の moblog で複数写真アップに対応したスクリプトを作りました。
COREBlog2 は、このサイトを見ているなら知っている人が多いと思いますが、plone で動作するブログソフトウェアの一つです。
で、moblog は携帯とかからメールを送って、ブログの記事(エントリ)をアップする仕組みです。
今までは、COREBlog2_ の作者の柴田さんが作って COREBlog2 0.8bをリリース — TRIVIAL TECHNOLOGIES 2.0 で公開しているスクリプトを使っていましたが、このスクリプトはメールに添付してある写真が1つだけという制限がありました。
というわけで、今回前から作りたいと思っていた、複数写真に対応したモブログの仕組みを作りました。実際のアップされた例は 今日はzope/plone開発勉強会 にあるような感じです。
スクリプトは /moblog – takanory.net に置いてある二つです。
- add_moblog_entry.py plone 側に置くスクリプト。 portal_skins/custom/ に置いて使います。
- moblog.py サーバ側で cron で動かして、メールを受信するスクリプト。 メールサーバ名、POP3 のユーザ名/パスワードや、plone のサーバ名、ブログのパス等を指定して使用します。
設定の手順としては moblog 設定 と同じ感じです。
以下にスクリプトの簡単な説明を載せます。
moblog.py
moblog.py で設定するパラメータは以下の通り。
import poplib
s = poplib.POP3('mailhost')
s.user('pop3user')
s.pass_('pop3pass')
l = s.list()
if len(l) and l[1]:
m = s.retr(1)
host = "example.com"
blog = "/coreblog"
auth = "user:pass"
password = "moblog_password"
- mailhost メールサーバのホスト名
- pop3uesr POP3のユーザ名
- pop3pass POP3のパスワード
- host ploneのサーバ名
- blog COREBlog2 のパス
- auth ploneユーザのユーザ名とパスワード
- password moblogメールの1行目に書くパスワード
また、このスクリプトでは、メールと本文をまとめて POST するために python cookbook に載っていた Http client to POST using multipart/form-data « ActiveState Code を参考にしました。
add_moblog_entry.py
こっちのスクリプトはあんまり説明する部分は無いんですが、以下の部分を修正することによって、画像をどこに表示するかと、画像のサイズを変更することができます。
# Set position,size
# 0(top), 1(left), 2(right), 3(bottom)
ent.setMedia_position(0)
# preview(400), mini(200), thumb(128), tile(64)
ent.setMedia_size('mini')
というわけで、今後は写真が複数あるモブログをがしがしアップしていこうかと思います。多分
-
- ¦
- 固定リンク
- ¦
- コメント (0)
- ¦
- トラックバック (0)
- トラックバック用URL:
- http://takanory.net/takalog/1143/tbping
鈴木たかのりです。とりあえず日記っぽく雑多なことを書き込んでいこうと思っています。
zope/plone関係の技術的な内容については