cppblog提供了metablog接口,供用戶使用一些桌面工具操作blog。MetaBlogAPI是一個(gè)XML-RPC Service。它可以讓用戶遠(yuǎn)程調(diào)用Blog程序提供的接口來完成一些功能,比如發(fā)布新的文章,查看最新文章的列表等。http://dudu.cnblogs.com/articles/411388.html
先看cppblog的一個(gè)接口:
metaWeblog.getCategories()的參數(shù)
返回結(jié)構(gòu)體
下面介紹使用Python來操作metablog接口。既然metablog是一個(gè)xml-rpc接口,那么就使用Python的xmlrpc庫吧,好消息是這個(gè)庫Python已經(jīng)提供了,就是xmlrpclib。
代碼如下:
import xmlrpclib
user = 'ronliu'
pass = '123'
url = 'http://www.shnenglu.com/ronliu/services/metaweblog.aspx'
server = xmlrpclib.Server(url)
cata = server.metaWeblog.getCategories('', user, pass) #典型的rpc調(diào)用
for e in cata:
print e['categoryid'], e['title']
操作結(jié)果:
使用xmlrpclib的Server()方法,可以創(chuàng)建一個(gè)rpc服務(wù)器的代理,然后通過這個(gè)代理訪問遠(yuǎn)程的方法。可以使用Python提供的調(diào)試功能查看rpc的執(zhí)行過程:
import httplib
httplib.HTTPConnection.debuglevel = 1