2006年1月 7日

mail2mt-newpost.pl

あれこれ調べて、こねくって作り、一応動いているようなので置いておく。

概要:
・Movable TypeのBlogに対してXML-RPC経由で記事を新規にpostするスクリプト。
・Perlで書いている。
・fmlなどで運用されているMLの記事を標準入力から読み込んで使うことを想定している。
・記事のHeaderのSunject:,Date:,X-ML-Name:, X-Mail-Count:を読み込み、
 BlogのTitle,Date,Category,individual-archive URLに変換する。

前提:
・Movable Typeで動かしているBlogがある。
・XML-RPC経由でのBlog記事の追加を許可している。
・ML毎のCategoryをあらかじめ用意している。

使い方:
・記事1通をBlogに登録する場合:
 $ perl mail2mt-newpost.pl < MLの個別の記事
・複数のファイルを連続して読み込みたいときはfindを使ったり、shでスクリプトを書くべし。

TODO:
・スクリプトが汚いので直したい。
 特にCategoriesを取得して、該当のCategory IDを取得する部分は良い手があるはず。
・ヘッダにX-ML-Name:が無いMLの場合は、List-Id:を代わりに取得するようにする。
・Date:ヘッダからBlog投稿時刻を設定する部分にまだbugがあるみたいなので直す。
 #年月日は正しいようだけど、時刻が00:00:00になってしまうようだ。
・記事中のE-mail addressをSPAMよけのために書き直す処理を追加する。
・記事が長いときに、bodyとextendに分ける処理を追加する。

Tips:
・Movable Typeの[Blogの設定]→[アーカイブの設定]→[アーカイブ・ファイルのテンプレート]→[individual archive]で、
 テンプレートに

<$MTEntryCategory$>/<$MTEntryKeywords dirify="1"$>.html

などと書くと、幸せになれそう。

ご注意:
・もちろん、公開されるMLの記事は公開が前提となっているものに限る。
 #Blogが隠蔽されているとかIntranetで運営されているなら話は別だろうけど。

ダウンロード:
mail2mt-newpost.pl

投稿者 his : 2006年1月 7日 18:44
このエントリーのトラックバックURL: http://hoop.euqset.org/blog/mt-tb2006.cgi/2546
mail2mt-newpost.plちょっといじり
概要 ちょっといじった。 > TODO: > ・スクリプトが汚いので直したい。 >  特にCategoriesを取得して、該当のCategory IDを取得する部分は良い手があるはず。 まだいじっていない。 というか、いじればいじるほど汚くなる(^^;。 CPANからそれなりのモジュールを持ってくれば...
ウェブログ: shibata(hi) shokudou
時刻: 2006年1月 8日 02:52
mail2mt-newpost.plちょっといじり(懲りずに1)
概要 #ほんとに今から寝る。 >> ・記事が長いときに、bodyとextendに分ける処理を追加する。 > > まだいじっていない。 > > #何行で分けるかが、悩ましいという話もある。 とりあえず、5行だけbodyに置いて、後はextendに置くようにしてみた。 #スカラー変数に複数行のテキ...
ウェブログ: shibata(hi) shokudou
時刻: 2006年1月 9日 00:16
mail2mt-newpost.plちょっといじり(懲りずに2)
概要 またちょっといじった。 $gt; TODO: >・Date:ヘッダからBlog投稿時刻を設定する部分にまだbugがあるみたいなので直す。 > #年月日は正しいようだけど、時刻が00:00:00になってしまうようだ。 何が悪いのか良くわからなかったので、MT/MTServer.pmのソースを見て...
ウェブログ: shibata(hi) shokudou
時刻: 2006年1月 9日 00:16
コメント
コメントする









名前、アドレスを登録しますか?





画像の中に見える文字を入力してください。