Blogger (Python) API: 如何通过帖子 ID 获取帖子?
之前我通过调用 gdata.blogger.client.add_post()
得到了一个帖子 ID...
post = client.add_post(...)
post_id = post.get_post_id()
...那么我该如何在将来使用这个帖子 ID 来获取这个帖子呢?我想也许可以用 gdata.blogger.client.Query
来实现,但这个方法不支持用帖子 ID 作为查询条件。Python 的 gdata
模块里分发的示例代码中也没有这个用法的例子,经过一段时间研究 gdata.blogger.client.*
后,我的进展并不大。
显然,我可以遍历博客中的所有帖子,直到找到那个对应 ID 的帖子,但这样做真的是个糟糕的主意。
1 个回答
1
继续我回答自己问题的主题...
经过很多尝试,看来这是一种解决方案。假设你有:
- client -- 一个 gdata.blogger.client.BloggerClient 的实例,
- blog -- 一个 gdata.blogger.data.Blog 的实例,
- post_id -- 一个由 gdata.blogger.data.BlogPost.get_post_id 返回的帖子 ID。
你可以这样做:
post = client.get_feed(
blog.get_post_link().href + '/%s' % post_id,
auth_token=client.auth_token,
desired_class=gdata.blogger.data.BlogPost)