--/--/--

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

2008/02/27

投稿プログラムできた

調べたらなんじゃなかった。下に投稿してる3つの投稿テストはプログラムのもの。面倒だから消さない。

改行のテストがうまくいってないのは、単純に html タグを使ってないから。タグ使えばたぶんうまくいく。ただ、タグをいちいち書くのも面倒なので、その辺は追って機能追加していこう。

スクリプトは gauche で書いた。ただの xmlrpc クライアントでなんの面白みもないプログラムなんだけど、せっかくだから晒す。xmlrpc モジュールはデフォルトのモジュール群にはなく、ネットから探してダウンロードした。感謝感謝。

#!/usr/bin/env gosh
(use rfc.uri)
(use xsm.xml-rpc.client)

(define host "blog.fc2.com")
(define path "/xmlrpc.php")
(define port 80)

(define blog-id "0")
(define user "your_mail_address")
(define pass "your_password")

; make-xml-rpc-client を server に束縛するのは、
; このプログラム自体が server の client になっているため(?)
(define (main args)
  (let ((server (make-xml-rpc-client
                  (uri-compose :scheme "http" :host host
                                 :port port :path path))))
    (call server
          "metaWeblog.newPost"
          blog-id
          user
          pass
          (hash-table 'eq?
                      (cons 'title (title args))
                      (cons 'description (description args)))
          #t)))
(define (title args)
  (cadr args))

(define (description args)
  (caddr args))

hash-table は初めて触った。やっぱあるんだね。

xmlrpc モジュールは、xsm というものを使用した。サンプルは用意されてるし、インストールは簡単だし、ソースも短めだし、かなりお手軽。

これで晴れて、コンソール/vim からブログの投稿ができるってもんです。ヤッター。

参考URL

スポンサーサイト

comment

post




上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。