え〜と、ひらたさんにアイデア頂いて、色々やってます。以上。
……じゃなくて、実はヴァリウム男爵も同じことを考えていたことが発覚するなど、ちょっと楽しいことになってるんですね。まぁ、僕が勝手に楽しんでいるだけですけれども。
んが。躓いてます。というのも、XML::Simpleを使いたいのですけど(この時点でだいたい何をやろうとしているのかがばれようというもの)、これ使うにはXML::SAXとXML::Parserが必要らしい。なのに、僕が間借りしてるサーバーには、両方ともインストールされていません。で、タイトルのエラーに襲われると。
む〜、要するにrsd.xmlの情報を取得したいわけなんですが(ばらした)、XML::Simple使う以外に方法はあるんでしょうか。もしくは何とかしてXML::SAXとXML::Parserを使う方法。まぁ、ユーザーに入力して貰って逃げ道もあるにはあるんですが……。
っていうか、自分のBlogで不特定多数に向けて質問投げるのはどうかと。>俺
<追記>
XML::Simpleを使うには、XML::SAXかXML::Parserのどちらかが必要、でしたね。大変失礼致しました。
で、サーバーのレンタル元に聞いてみたんですが、どちらもインストールする予定は無いとのことでした。残念。
なので、rsd.xmlを取得するのは断念する方向です。まぁ、rsd.xmlのURLだけを入力するか、mt-xmlrpc.cgiのURLとblog IDの二つを入力しなくちゃいけないか、の違いなんですね。それくらい入力してくれやってな感じで。
ヴァリウム男爵
こちらでもXML::Parser絡みのエラーで躓いてます。詳細は太鉄さんにメールしました。(詳細ってほどでもないですけど)
簡単に言うと、getRecentPostTitles()で1件でも取得しようとすると、not well-formed (invalid token) エラーが出ます。太鉄さんのところがEUC環境だからなんでしょうか・・・。(うちのUTF8環境ではまったく問題ナシです)
ヴァリウム男爵
ああ、「MTのXML-RPCサーバからの返却値がencodings="UTF-8"なのに内容はPublishCharsetの文字コードだから」なんですね・・・。
サーバ側に手を加えなゃいけないんじゃ意味ないですし、どうしたものか・・・。
管理人
ひらたさんとこのmoblog使う時、EUC-JP環境の場合はlib/MT/XMLPRCServer.pmに手を入れましたね。
それとは違う問題でしょうか。
僕のところではヴァリウム男爵のところの表示はできてましたよね?(タイトルは処理抜けてたんで化けてましたけど)
MovableType.pmの問題なんですかね。
ヴァリウム男爵
太鉄さんのところで、僕のところは表示できていました。
moblog使う時の修正というのは、newPost()で保存前にutf8→eucを追加するものですよね?
この問題は、EUC環境でget〜系の返却値がutf8ではなく、EUCになっていることで発生しているらしいのです。ですからMovableType.pmの問題というより、MT::RPCServer側に問題があるみたいですね。
今ちょうどこの件についてエントリーを書いてた所なのですが、要するにMT::RPCServerの返却値が、XMLのencodeing指定はUTF8なのに対し、実体はEUCになっているためということなので、上と同じような修正をRPCServer側に入れなくちゃいけないということだと思います。(euc→utf8変換)
管理人
あ〜、すると、僕の方でもどこか他のEUC-JPで運用されているblogから情報を取得しようとすると、うまく行かないってことですかね?
うちはEUC-JPでヴァリウムさんところはUTF-8だから、両方ともちゃんと表示されるようなんでそれでオッケーとか思ってたんですが……。
ヴァリウム男爵
>うちはEUC-JPでヴァリウムさんところはUTF-8だから、両方ともちゃんと表示されるようなんで
あれ?ちゃんと表示されてるんですか?なんでだろ・・・。
ヴァリウム男爵
解決しました。詳細はメールします。