1

我正在尝试将 Wordpress 博客文章迁移到 Confluence 博客空间。我正在使用 Confluence api 发布博客。我还需要在过去的某个地方设置发布日期(Wordpress 上的原始发布日期)。Confluence Web-UI 提供了自定义发布日期的选项,但我在 API 文档中没有看到任何可以让我通过发布日期的内容。这是我的 python 脚本,它能够创建博客文章但无需自定义“发布日期”

import requests
import json


def main():
    auth = open('/tmp/confluence', 'r').readline().strip()
    username = 'rakesh'
    base_url = "https://<HOSTNAME>/rest/api/content/"
    space_key = "LOC"

    html_body = """<h1>This is h1 header</h1>
                   <p> this is paragraph</p>
                   <table> <tr> <td> data block1</td> <td> data block2</td> </tr></table>"""
    data = {'type': 'blogpost',
            'title': 'Blog test4',
            'space': {'key': space_key},
            'body': {'storage': {'value': html_body,
                                 'representation': 'storage'}}}

    response = requests.post(base_url,
                             auth=(username, auth),
                             headers={'Content-type': 'application/json'},
                             data=json.dumps(data))

    print response.status_code, response.text

if __name__ == "__main__":
    main()

这是请求json:

{'type': 'blogpost',
                'title': 'Blog test4',
                'space': {'key': space_key},
                'body': {'storage': {'value': '<h1>This is h1 header</h1><p> this is paragraph</p>',
                                     'representation': 'storage'}
                        }
 }
4

1 回答 1

2

我们只是做了同样的事情。要传递发布日期,您只需在请求 json 中添加 history.createdDate。

{
    'type': 'blogpost',
    'title': 'Blog test4',
    'space': {
        'key': space_key
    },
    'history': {
        'createdDate': '2016-10-10T04:00:00.000Z'
    },
    'body': {
        'storage': {
            'value': '<h1>This is h1 header</h1><p> this is paragraph</p>',
            'representation': 'storage'
        }
    }
}
于 2016-10-25T16:34:21.390 回答