我试图建立一种Python的脚本,需要发布内容到WordPress博客,问题是,我需要将图像设置为后的缩略图,我没有怎么做任何的想法。
这是一个代码才能发布内容(不带缩略图)到WP的例子:
import xmlrpclib
user = 'username'
passwd = 'password'
server = xmlrpclib.ServerProxy('http://vizible.wordpress.com/xmlrpc.php')
blog_id = 0
title = 'test title'
content = 'test content, from python'
blog_content = { 'title' : title, 'description' : content }
categories = [{'categoryId' : 'programming', 'isPrimary' : 1}]
post_id = int(server.metaWeblog.newPost(blog_id, user, passwd, blog_content,0))
server.mt.setPostCategories(post_id, user, passwd, categories) # not work
server.mt.publishPost(post_id, user, passwd)
搜索在网络上我发现了另一个库内容发布到WordPress的,我试过这个示例代码 ,但没有奏效。
¿你知道另一个Python的库与WordPress的,它接受的缩略图互动?
谢谢 :)
编辑 :
好了,现在的代码上传图像到我的wordpress库,但我不会设置是视后的缩略图。
这是代码:
#!/usr/bin/env python
import xmlrpclib
import urllib2 as urllib
user = 'username'
passwd = 'pass'
server = xmlrpclib.ServerProxy('http://miweb.com/xmlrpc.php')
blog_id = 0
fileimg = urllib.urlopen('image_url')
fileimg = xmlrpclib.Binary(fileimg.read())
data = {'name':'mqdefault.jpg', 'type':'image/jpeg', 'bits':fileimg}
upload = server.wp.uploadFile(blog_id, user, passwd, data)
content = {'post_title':'title', 'post_content':'content', 'post_thumbnail':upload['id']}
post_id = server.wp.newPost(blog_id, user, passwd, content)
server.mt.publishPost(post_id, user, passwd)
问题是,即使内容[“post_thumbnail”]并上传[“身份证”]是相同的号码,当我将它张贴在我的WordPress博客不会显示任何缩略图,但是这是在画廊上传。
最后编辑 :我的主题显示缩略图作为元,所以我不得不将它们添加到岗位作为元信息。 这对我来说更好,因为我并不需要举办缩略图在我的服务器。
最终代码 :
#!/usr/bin/env python
import xmlrpclib
user = 'username'
passwd = 'pass'
server = xmlrpclib.ServerProxy('http://miweb.com/xmlrpc.php')
blog_id = 0
content = {'post_title':'prova1', 'post_content':'prova text', 'post_status':'published', 'custom_fields': [{'value': 'thumbnail url', 'key': 'thumb'}]}
post_id = server.wp.newPost(blog_id, user, passwd, content)
server.mt.publishPost(post_id, user, passwd)