RSS→MIXI転記ツール開発中(4) テンプレート機能実装

fslasht2008-06-17


外部ブログの新着日記をRSSで取得してmixi内の日記に転記するツールを作っています。
この辺( http://d.hatena.ne.jp/fslasht/20071104 )の経緯で開発を始めました。

※僕は、はてなダイアリーに書いた日記をmixiに自動転送するために使っています。



今回は半年振りのバージョンアップでいろいろと変わっています。
要望の多かったテンプレート機能(転記時の形式を指定する機能)も実装しました。
またプレミアムユーザー向けに対応タグを増やしました。
エラー処理とかはまだほとんどやってないので、その辺は注意。


スクリーンショット


● 主な機能

・任意のタイミングおよび一定間隔で外部ブログの新着エントリー(新着日記)をmixi内の日記に転記する。
・外部ブログの新着日記の取得はRSSを使って行う(RSS1,2対応)。
・外部ブログのHTMLをmixi日記で対応するタグに変換
 ・<a href="">〜</a> タグ ※テキストの後に括弧つきでURLを併記
 ・<img src=""> タグ ※画像のURLを記載 または mixi内のフォトアルバムに転記後日記に貼り付け
 ・youtubeへのリンクをmixi日記内のyoutube書式で貼り付け
 ・改行などの微妙なタグの変換(特にはてなダイアリーにあわせてチューニング)
 ※mixiプレミアム用のタグに対応しました( a , font , blockquote )



● 対象OS

Microsoft Windwos XP SP2で試験 (2000やVistaでも動くはず)
.Net Framework 2.0



● ダウンロード


最新版は以下のURLからダウンロードできます。
http://www.dokokano.net/~fslasht/warehouse/programs/testRSStoMixi_latest.zip



インストール方法や使用方法は、ダウンロードしたファイル中の「使用方法.txt」をご覧ください。


HISTORY

*2007.11.04 ver.0.01 初公開
*2007.11.07 ver.0.02 ブログの画像もMIXI日記に貼り込めるように改良
*2007.11.09 ver.0.02b 画像転記できないTAGがあるのを修正。先頭の空行を除去。「〜」の文字化け修正。
*2007.11.09 ver.0.02c アップロード先のアルバムが3ページ以上になると日記に画像が転記できなくなるのを修正
*2007.11.10 ver.0.02d
 '‖'と'−'が文字化けするのを修正
 文中に</p>があった場合はそこで改行するようにした(Yahooブログ対策)
 <a href >〜</a>の間に、<img>がある場合は、リンク後改行するようにした
 相対リンクは展開しないようにした(リンク自体は消す)
 日付に時刻が含まれていない場合、リンクのアンカー文字を変わりにいれる(はてなの場合、「p1」「p2」など)
*2007.11.11 ver.0.03
 設定をタブに分けた。
 自動転記設定を追加(指定間隔で自動的に転記処理を行う)
 起動中はタスクトレイにアイコンを表示するようにした。ここからメニュー操作可。
 アイコン状態で起動時出来る設定を追加。
*2007.12.02 ver.0.04
 自動転記時に最終転送日記が10時以前の場合、その日のその後の日記が転記されなくなるバグを修正(投稿日時の「時」を常に2桁にした)
 日記転記、画像転送時のページ遷移時にウエイトを入れた(mixiの連続アクセスブロック回避)。
*2008.06.16 ver.0.05
 自動転記モード時にRSS取得エラーが発生した場合、無視するようにした。
 アルバムへの画像アップロードが出来なくなっていたバグを修正(POSTデータの最後のバウンダリ末尾の「--」が不足していた)

*2008.06.17 ver.0.06
 テンプレート機能実装
 設定画面を別ダイアログに移動
 Mixi Premiumユーザー向け設定追加
 「写真(大)を選択する」設定追加
 設定を、setting.xmlに保存するようにした。
 メインウィンドウにメニューを実装
 写真アップロード履歴を残し、同一URLの写真の2重転送を防ぐよう改良
 写真アップロード機能を追加(ツール)





※「テンプレート機能」について

日記を転記する際にタイトルや本文の形式を指定できます。
テンプレートで %〜% であらわされる部分が以下の内容に置き換わります。

%title% = タイトル
%date% = ブログ投稿日付
%body% = 本文
%link% = 転記元ブログURL

%line% = 本文行数
%size% = 本文文字数


設定例)
タイトル:

[転記] %title% (%line%行あります)
本文:
%body%

  • -

この日記は以下のブログから転記しました。
%title%
%link%
(日付:%date%)