最新消息:20210816 当前crifan.com域名已被污染,为防止失联,请关注(页面右下角的)公众号

【已解决】Python把印象笔记帖子内容通过WordPress的REST的post接口去上传到crifan.com

印象笔记 crifan 2173浏览 0评论
折腾:
【未解决】用Python通过WordPress的REST的API发布文章post
期间,之前已经处理完毕印象笔记的帖子中的内容,处理成自己希望的html了:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
2020/03/14 08:57:52 EvernoteToWordpress.py:942  INFO    postHtml=<!DOCTYPE en-note SYSTEM "http://xml.evernote.com/pub/enml2.dtd">
<html>
 <div>
  折腾:
 </div>
 <div>
  【未解决】Mac中pyenv设置系统python版本为3.7
 </div>
 <div>
  期间,去用pyenv安装python:
 </div>
 <div>
  </img>
  <br/>
 </div>
 <pre class="brush: shell; gutter: true">➜  ~ pyenv install 3.7.3
python-build: use openssl from homebrew
python-build: use readline from homebrew
Downloading Python-3.7.3.tar.xz...
 <div>
  pyenv install太慢
 </div>
 <div>
  所以参考
 </div>
 <div>
   MacOS 下利用 pyenv 管理Python 版本和虚拟环境 - 掘金
  </a>
 </div>
 <div>
  去换源,看看能否加速下载和安装
 </div>
 <pre class="brush: shell; gutter: true">➜  ~ mkdir ~/.pip
➜  ~ vim ~/.pip/pip.conf
➜  ~ cat ~/.pip/pip.conf
[global]
[install]
trusted-host=mirrors.aliyun.com</pre>
 <div>
  <br/>
 </div>
 <div>
  此办法,并不能给pyenv install更换源以加速
 </div>
 <div>
  等后续看看pip安装的时,是否换了源,是否加了速度
 </div>
 <div>
  后来:
 </div>
 <div>
  【未解决】Mac中给Python 3.7中安装python库numpy和pandas
 </div>
 <div>
  期间,确认pip的源生效了,换成aliyun的地址了,下载速度很快:
 </div>
 <pre class="brush: shell; gutter: true">➜  ~ pip3 install numpy pandas
Collecting numpy
100% |████████████████████████████████| 15.1MB 1.1MB/s
Collecting pandas
100% |████████████████████████████████| 9.8MB 1.3MB/s
...</pre>
 <div>
  效果很不错。
 </div>
 <div>
  <br/>
 </div>
 <div>
  【总结】
 </div>
 <div>
  此处想要给pip全局下载加速,可以更换源。
 </div>
 <div>
  做法:
 </div>
 <pre class="brush: shell; gutter: true">mkdir ~/.pip
vim ~/.pip/pip.conf</pre>
 <div>
  保存内容:
 </div>
 <pre class="brush: shell; gutter: true">[global]
[install]
trusted-host=mirrors.aliyun.com</pre>
 <div>
  即可-》后续pip下载时,就会从
 </div>
 <div>
   mirrors.aliyun.com
  </a>
 </div>
 <div>
  下载,速度很快。
 </div>
 <div>
  <br/>
 </div>
 <div>
  后记:
 </div>
 <div>
  貌似其他源也可以,比如:
 </div>
 <div>
   taobao Mirrors
  </a>
 </div>
 <div>
  -&gt;
 </div>
 <div>
   Python Mirror
  </a>
 </div>
 <div>
  抽空试试
 </div>
 <div>
  <br/>
 </div>
 <div>
  以及:
 </div>
 <div>
   MacOS 下利用 pyenv 管理Python 版本和虚拟环境 - 掘金
  </a>
 </div>
 <div>
  说的其他源:
 </div>
 <ul>
  <li>
   <div>
    豆瓣:http://pypi.douban.com
   </div>
  </li>
  <li>
   <div>
   </div>
  </li>
  <li>
   <div>
   </div>
  </li>
 </ul>
 <div>
  <br/>
 </div>
</html>
可以继续去发布了:
接下来就是去调用WordPress的rest的api去上传了。
具体怎么写代码,可以参考之前上传图片的具体写法。
Posts | REST API Handbook | WordPress Developer Resources
参考:
【已解决】研究WordPress的REST的api中创建POST时所需参数和格式
去写代码试试
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
def uploadPostToWordpress(curNote):
    """Upload note content new html to wordpress
 
    Args:
        curNote (Note): evernote Note
    Returns:
        (bool, dict)
    Raises:
    """
    uploadPostOk, respInfo = False, None
 
    curHeaders = {
        "Authorization": Authorization,
        "Content-Type": "application/json",
        "Accept": "application/json",
    }
    logging.info("curHeaders=%s", curHeaders)
    #
    # created=1582809109000, updated=1584190363000,
    # dateTimestamp = curNote.updated
    dateTimestamp = curNote.created # 1582809109000
    dateTimestamp = float(dateTimestamp) / 1000.0 # 1582809109.0
    datetimeObj = utils.timestampToDatetime(dateTimestamp)
    outputFormat = "%Y%m%dT%H%M%S"
    dateStr = datetimeObj.strftime(format=outputFormat) # '20200227T211149'
    postDict = {
        "title": curNote.title,
        "content": curNote.content,
        # "date_gmt": dateStr,
        "date": dateStr,
        "slug": curNote.attributes.sourceURL,
        "status": "draft",
        "format": "standard",
        # TODO: featured_media, categories, tags, excerpt
    }
    logging.debug("postDict=%s", postDict)
    # postDict={'title': '【已解决】Mac中给pip更换源以加速下载', 'content': '<div>\n  折腾:\n </div>。。。。。。。。。</div>\n', 'date': '20200227T211149', 'slug': 'mac_pip_change_source_server_to_spped_up_download', 'status': 'draft', 'format': 'standard'}
    createPostUrl = API_POSTS
    resp = requests.post(
        createPostUrl,
        proxies=cfgProxies,
        headers=curHeaders,
        # data=json.dumps(postDict),
        json=postDict,
    )
    logging.info("resp=%s", resp)
 
    if resp.ok:
        respJson = resp.json()
        logging.info("respJson=%s", respJson)
        """
 
        """
        postIdInt = respJson["id"]
        postUrl = respJson["guid"]["rendered"]
        postLink = respJson["link"]
        logging.info("postIdInt=%s, postUrl=%s, postLink=%s", postIdInt, postUrl, postLink)
        #
        uploadPostOk = True
        respInfo = {
            "id": postIdInt,
            "url": imgUrl,
            "link": postLink,
        }
    else:
        uploadPostOk = False
        respInfo = {
            "errCode": resp.status_code,
            "errMsg": resp.text
        }
 
    logging.info("uploadPostOk=%s, respInfo=%s", uploadPostOk, respInfo)
    return uploadPostOk, respInfo
结果:
【已解决】Python上传WordPress的post帖子报错:400 rest_invalid_param 无效参数 date的类型不是string
就上传成功了。
返回内容:
1
2020/03/15 10:04:36 EvernoteToWordpress.py:788  INFO    respJson={'id': 70410, 'date': '2020-02-27T21:11:49', 'date_gmt': '2020-02-27T13:11:49', 'guid': {'rendered': 'https://www.crifan.com/?p=70410', 'raw': 'https://www.crifan.com/?p=70410'}, 'modified': '2020-02-27T21:11:49', 'modified_gmt': '2020-02-27T13:11:49', 'password': '', 'slug': 'mac_pip_change_source_server_to_spped_up_download', 'status': 'draft', 'type': 'post', 'link': 'https://www.crifan.com/?p=70410', 'title': {'raw': '【已解决】Mac中给pip更换源以加速下载', 'rendered': '【已解决】Mac中给pip更换源以加速下载'}, 'content': {'raw': '<div>\n  折腾:\n </div>\n <div>\n  【未解决】Mac中pyenv设置系统python版本为3.7\n </div>\n <div>\n  期间,去用pyenv安装python:\n </div>\n <div>\n  <img src="https://www.crifan.com/files/pic/uploads/2020/03/675e29f778ab4b31be41965b7f55dc91.jpg"/>\n  \n </div>\n <div>\n  日志:\n </div>\n <pre class="brush: shell; gutter: true">➜\xa0\xa0~ pyenv install 3.7.3\npython-build: use openssl from homebrew\npython-build: use readline from homebrew\nDownloading Python-3.7.3.tar.xz...\n-&gt; https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tar.xz</pre>\n <div>\n  pyenv install太慢\n </div>\n <div>\n  所以参考\n </div>\n <div>\n  <a href="https://juejin.im/post/5c739c86e51d45699514ee0c">\n   MacOS 下利用 pyenv 管理Python 版本和虚拟环境 - 掘金\n  </a>\n </div>\n <div>\n  去换源,看看能否加速下载和安装\n </div>\n <pre class="brush: shell; gutter: true">➜\xa0\xa0~ mkdir ~/.pip\n➜\xa0\xa0~ vim ~/.pip/pip.conf\n➜\xa0\xa0~ cat ~/.pip/pip.conf\n[global]\nindex-url = http://mirrors.aliyun.com/pypi/simple/\n[install]\ntrusted-host=mirrors.aliyun.com</pre>\n <div>\n </div>\n <div>\n  此办法,并不能给pyenv install更换源以加速\n </div>\n <div>\n  等后续看看pip安装的时,是否换了源,是否加了速度\n </div>\n <div>\n  后来:\n </div>\n <div>\n  【未解决】Mac中给Python 3.7中安装python库numpy和pandas\n </div>\n <div>\n  期间,确认pip的源生效了,换成aliyun的地址了,下载速度很快:\n </div>\n <pre class="brush: shell; gutter: true">➜\xa0\xa0~ pip3 install numpy pandas\nLooking in indexes: http://mirrors.aliyun.com/pypi/simple/\nCollecting numpy\nDownloading http://mirrors.aliyun.com/pypi/packages/2f/5b/2cc2b9285e8b2ca8d2c1e4a2cbf1b12d70a2488ea78170de1909bca725f2/numpy-1.18.1-cp37-cp37m-macosx_10_9_x86_64.whl (15.1MB)\n100% |████████████████████████████████| 15.1MB 1.1MB/s\nCollecting pandas\nDownloading http://mirrors.aliyun.com/pypi/packages/ab/ba/f97030b7e8ec0a981abdca173de4e727b3a7b4ed5dba492f362ba87d59a2/pandas-1.0.1-cp37-cp37m-macosx_10_9_x86_64.whl (9.8MB)\n100% |████████████████████████████████| 9.8MB 1.3MB/s\n...</pre>\n <div>\n  效果很不错。\n </div>\n <div>\n </div>\n <div>\n  【总结】\n </div>\n <div>\n  此处想要给pip全局下载加速,可以更换源。\n </div>\n <div>\n  做法:\n </div>\n <pre class="brush: shell; gutter: true">mkdir ~/.pip\nvim ~/.pip/pip.conf</pre>\n <div>\n  保存内容:\n </div>\n <pre class="brush: shell; gutter: true">[global]\nindex-url = http://mirrors.aliyun.com/pypi/simple/\n[install]\ntrusted-host=mirrors.aliyun.com</pre>\n <div>\n  即可-》后续pip下载时,就会从\n </div>\n <div>\n  <a href="http://mirrors.aliyun.com/">\n   mirrors.aliyun.com\n  </a>\n </div>\n <div>\n  下载,速度很快。\n </div>\n <div>\n </div>\n <div>\n  后记:\n </div>\n <div>\n  貌似其他源也可以,比如:\n </div>\n <div>\n  <a href="https://npm.taobao.org/mirrors/">\n   taobao Mirrors\n  </a>\n </div>\n <div>\n  -&gt;\n </div>\n <div>\n  <a href="https://npm.taobao.org/mirrors/python/">\n   Python Mirror\n  </a>\n </div>\n <div>\n  抽空试试\n </div>\n <div>\n </div>\n <div>\n  以及:\n </div>\n <div>\n  <a href="https://juejin.im/post/5c739c86e51d45699514ee0c">\n   MacOS 下利用 pyenv 管理Python 版本和虚拟环境 - 掘金\n  </a>\n </div>\n <div>\n  说的其他源:\n </div>\n <ul>\n  <li>\n   <div>\n    豆瓣:http://pypi.douban.com\n   </div>\n  </li>\n  <li>\n   <div>\n    阿里云:http://mirrors.aliyun.com/pypi/simple\n   </div>\n  </li>\n  <li>\n   <div>\n    清华大学:https://pypi.tuna.tsinghua.edu.cn/simple\n   </div>\n  </li>\n </ul>\n <div>\n </div>\n', 'rendered': '<div>\n  折腾:\n </div>\n<div>\n  【未解决】Mac中pyenv设置系统python版本为3.7\n </div>\n<div>\n  期间,去用pyenv安装python:\n </div>\n<div>\n  <img src="https://www.crifan.com/files/pic/uploads/2020/03/675e29f778ab4b31be41965b7f55dc91.jpg"/></p></div>\n<div>\n  日志:\n </div>\n<pre class="brush: shell; gutter: true">➜\xa0\xa0~ pyenv install 3.7.3\npython-build: use openssl from homebrew\npython-build: use readline from homebrew\nDownloading Python-3.7.3.tar.xz...\n-&gt; https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tar.xz</pre>\n<div>\n  pyenv install太慢\n </div>\n<div>\n  所以参考\n </div>\n<div>\n  <a href="https://juejin.im/post/5c739c86e51d45699514ee0c"><br />\n   MacOS 下利用 pyenv 管理Python 版本和虚拟环境 &#8211; 掘金<br />\n  </a>\n </div>\n<div>\n  去换源,看看能否加速下载和安装\n </div>\n<pre class="brush: shell; gutter: true">➜\xa0\xa0~ mkdir ~/.pip\n➜\xa0\xa0~ vim ~/.pip/pip.conf\n➜\xa0\xa0~ cat ~/.pip/pip.conf\n[global]\nindex-url = http://mirrors.aliyun.com/pypi/simple/\n[install]\ntrusted-host=mirrors.aliyun.com</pre>\n<div>\n </div>\n<div>\n  此办法,并不能给pyenv install更换源以加速\n </div>\n<div>\n  等后续看看pip安装的时,是否换了源,是否加了速度\n </div>\n<div>\n  后来:\n </div>\n<div>\n  【未解决】Mac中给Python 3.7中安装python库numpy和pandas\n </div>\n<div>\n  期间,确认pip的源生效了,换成aliyun的地址了,下载速度很快:\n </div>\n<pre class="brush: shell; gutter: true">➜\xa0\xa0~ pip3 install numpy pandas\nLooking in indexes: http://mirrors.aliyun.com/pypi/simple/\nCollecting numpy\nDownloading http://mirrors.aliyun.com/pypi/packages/2f/5b/2cc2b9285e8b2ca8d2c1e4a2cbf1b12d70a2488ea78170de1909bca725f2/numpy-1.18.1-cp37-cp37m-macosx_10_9_x86_64.whl (15.1MB)\n100% |████████████████████████████████| 15.1MB 1.1MB/s\nCollecting pandas\nDownloading http://mirrors.aliyun.com/pypi/packages/ab/ba/f97030b7e8ec0a981abdca173de4e727b3a7b4ed5dba492f362ba87d59a2/pandas-1.0.1-cp37-cp37m-macosx_10_9_x86_64.whl (9.8MB)\n100% |████████████████████████████████| 9.8MB 1.3MB/s\n...</pre>\n<div>\n  效果很不错。\n </div>\n<div>\n </div>\n<div>\n  【总结】\n </div>\n<div>\n  此处想要给pip全局下载加速,可以更换源。\n </div>\n<div>\n  做法:\n </div>\n<pre class="brush: shell; gutter: true">mkdir ~/.pip\nvim ~/.pip/pip.conf</pre>\n<div>\n  保存内容:\n </div>\n<pre class="brush: shell; gutter: true">[global]\nindex-url = http://mirrors.aliyun.com/pypi/simple/\n[install]\ntrusted-host=mirrors.aliyun.com</pre>\n<div>\n  即可-》后续pip下载时,就会从\n </div>\n<div>\n  <a href="http://mirrors.aliyun.com/"><br />\n   mirrors.aliyun.com<br />\n  </a>\n </div>\n<div>\n  下载,速度很快。\n </div>\n<div>\n </div>\n<div>\n  后记:\n </div>\n<div>\n  貌似其他源也可以,比如:\n </div>\n<div>\n  <a href="https://npm.taobao.org/mirrors/"><br />\n   taobao Mirrors<br />\n  </a>\n </div>\n<div>\n  -&gt;\n </div>\n<div>\n  <a href="https://npm.taobao.org/mirrors/python/"><br />\n   Python Mirror<br />\n  </a>\n </div>\n<div>\n  抽空试试\n </div>\n<div>\n </div>\n<div>\n  以及:\n </div>\n<div>\n  <a href="https://juejin.im/post/5c739c86e51d45699514ee0c"><br />\n   MacOS 下利用 pyenv 管理Python 版本和虚拟环境 &#8211; 掘金<br />\n  </a>\n </div>\n<div>\n  说的其他源:\n </div>\n<ul>\n<li>\n<div>\n    豆瓣:http://pypi.douban.com\n   </div>\n</li>\n<li>\n<div>\n    阿里云:http://mirrors.aliyun.com/pypi/simple\n   </div>\n</li>\n<li>\n<div>\n    清华大学:https://pypi.tuna.tsinghua.edu.cn/simple\n   </div>\n</li>\n</ul>\n<div>\n </div>\n<p>转载请注明:<a href="https://www.crifan.com">在路上</a> &raquo; <a href="https://www.crifan.com/?p=70410">【已解决】Mac中给pip更换源以加速下载</a></p>', 'protected': False, 'block_version': 0}, 'excerpt': {'raw': '', 'rendered': '<p>折腾: 【未解决】Mac中pyenv设置系统python版本为3.7 期间,去用pyenv安装python:  [&hellip;]</p>\n', 'protected': False}, 'author': 1, 'featured_media': 0, 'comment_status': 'open', 'ping_status': 'open', 'sticky': False, 'template': '', 'format': 'standard', 'meta': [], 'categories': [1], 'tags': [], 'permalink_template': 'https://www.crifan.com/%postname%/', 'generated_slug': '【已解决】mac中给pip更换源以加速下载', '_links': {'self': [{'href': 'https://www.crifan.com/wp-json/wp/v2/posts/70410'}], 'collection': [{'href': 'https://www.crifan.com/wp-json/wp/v2/posts'}], 'about': [{'href': 'https://www.crifan.com/wp-json/wp/v2/types/post'}], 'author': [{'embeddable': True, 'href': 'https://www.crifan.com/wp-json/wp/v2/users/1'}], 'replies': [{'embeddable': True, 'href': 'https://www.crifan.com/wp-json/wp/v2/comments?post=70410'}], 'version-history': [{'count': 0, 'href': 'https://www.crifan.com/wp-json/wp/v2/posts/70410/revisions'}], 'wp:attachment': [{'href': 'https://www.crifan.com/wp-json/wp/v2/media?parent=70410'}], 'wp:term': [{'taxonomy': 'category', 'embeddable': True, 'href': 'https://www.crifan.com/wp-json/wp/v2/categories?post=70410'}, {'taxonomy': 'post_tag', 'embeddable': True, 'href': 'https://www.crifan.com/wp-json/wp/v2/tags?post=70410'}], 'wp:action-publish': [{'href': 'https://www.crifan.com/wp-json/wp/v2/posts/70410'}], 'wp:action-unfiltered-html': [{'href': 'https://www.crifan.com/wp-json/wp/v2/posts/70410'}], 'wp:action-sticky': [{'href': 'https://www.crifan.com/wp-json/wp/v2/posts/70410'}], 'wp:action-assign-author': [{'href': 'https://www.crifan.com/wp-json/wp/v2/posts/70410'}], 'wp:action-create-categories': [{'href': 'https://www.crifan.com/wp-json/wp/v2/posts/70410'}], 'wp:action-assign-categories': [{'href': 'https://www.crifan.com/wp-json/wp/v2/posts/70410'}], 'wp:action-create-tags': [{'href': 'https://www.crifan.com/wp-json/wp/v2/posts/70410'}], 'wp:action-assign-tags': [{'href': 'https://www.crifan.com/wp-json/wp/v2/posts/70410'}], 'curies': [{'name': 'wp', 'href': 'https://api.w.org/{rel}', 'templated': True}]}}
去格式化看看
主要内容是:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
{
  "id": 70410,
  "date": "2020-02-27T21:11:49",
  "date_gmt": "2020-02-27T13:11:49",
  "guid": {
    "rendered": "https://www.crifan.com/?p=70410",
  },
  "modified": "2020-02-27T21:11:49",
  "modified_gmt": "2020-02-27T13:11:49",
  "password": "",
  "slug": "mac_pip_change_source_server_to_spped_up_download",
  "status": "draft",
  "type": "post",
  "title": {
    'raw": "【已解决】Mac中给pip更换源以加速下载", "rendered": "【已解决】Mac中给pip更换源以加速下载'
  },
  "content": {
...
打开看看:
https://www.crifan.com/?p=70410
https://www.crifan.com/mac_pip_change_source_server_to_spped_up_download
找不到,去后台看看,发现是:处于草稿状态:
是正常的。
去发布后,效果是:
【已解决】Mac中给pip更换源以加速下载 – 在路上
去看看图片:
https://www.crifan.com/files/pic/uploads/2020/03/675e29f778ab4b31be41965b7f55dc91.jpg
是正常的:
后面内容:
也是正常的。
总体上:codeblock变pre,brush设置为shell
其他代码是普通的html
再去后台看看当前html是什么
列表是我们希望的:
1
2
3
4
5
6
7
8
<ul>
     <li>
<div>豆瓣:http://pypi.douban.com</div></li>
     <li>
<div>阿里云:http://mirrors.aliyun.com/pypi/simple</div></li>
     <li>
<div>清华大学:https://pypi.tuna.tsinghua.edu.cn/simple</div></li>
</ul>
pre也是正常的:
至此,是正常发布帖子内容到自己的WordPress的crifan.com网站中了。
【总结】
此处用代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
API_MEDIA = HOST + "/wp-json/wp/v2/media"
API_POSTS = HOST + "/wp-json/wp/v2/posts" # https://www.crifan.com/wp-json/wp/v2/posts
 
def uploadPostToWordpress(curNote):
    """Upload note content new html to wordpress
 
    Args:
        curNote (Note): evernote Note
    Returns:
        (bool, dict)
    Raises:
    """
    uploadPostOk, respInfo = False, None
 
    curHeaders = {
        "Authorization": Authorization,
        "Content-Type": "application/json",
        "Accept": "application/json",
    }
    logging.info("curHeaders=%s", curHeaders)
    #
    # created=1582809109000, updated=1584190363000,
    # dateTimestamp = curNote.updated
    dateTimestamp = curNote.created # 1582809109000
    dateTimestamp = float(dateTimestamp) / 1000.0 # 1582809109.0
    datetimeObj = utils.timestampToDatetime(dateTimestamp)
    outputFormat = "%Y-%m-%dT%H:%M:%S"
    dateStr = datetimeObj.strftime(format=outputFormat) # '2020-02-27T21:11:49'
    postDict = {
        "title": curNote.title,
        "content": curNote.content,
        # "date_gmt": dateStr,
        "date": dateStr,
        "slug": curNote.attributes.sourceURL,
        "status": "draft",
        "format": "standard",
        # TODO: featured_media, categories, tags, excerpt
    }
    logging.debug("postDict=%s", postDict)
    # postDict={'title': '【已解决】Mac中给pip更换源以加速下载', 'content': '<div>\n  折腾:\n </div>。。。。。。。。。</div>\n', 'date': '20200227T211149', 'slug': 'mac_pip_change_source_server_to_spped_up_download', 'status': 'draft', 'format': 'standard'}
    createPostUrl = API_POSTS
    resp = requests.post(
        createPostUrl,
        proxies=cfgProxies,
        headers=curHeaders,
        # data=json.dumps(postDict),
        json=postDict,
    )
    logging.info("resp=%s", resp)
 
    if resp.ok:
        respJson = resp.json()
        logging.info("respJson=%s", respJson)
        """
            {
                "id": 70410,
                "date": "2020-02-27T21:11:49",
                "date_gmt": "2020-02-27T13:11:49",
                "guid": {
                    "rendered": "https://www.crifan.com/?p=70410",
                    "raw": "https://www.crifan.com/?p=70410"
                },
                "modified": "2020-02-27T21:11:49",
                "modified_gmt": "2020-02-27T13:11:49",
                "password": "",
                "slug": "mac_pip_change_source_server_to_spped_up_download",
                "status": "draft",
                "type": "post",
                "link": "https://www.crifan.com/?p=70410",
                "title": {
                    'raw": "【已解决】Mac中给pip更换源以加速下载",
                    "rendered": "【已解决】Mac中给pip更换源以加速下载"
                },
                "content": {
                    ...
        """
        postIdInt = respJson["id"]
        postUrl = respJson["guid"]["rendered"]
        postLink = respJson["link"]
        logging.info("postIdInt=%s, postUrl=%s, postLink=%s", postIdInt, postUrl, postLink)
        #
        uploadPostOk = True
        respInfo = {
            "id": postIdInt,
            "url": imgUrl,
            "link": postLink,
        }
    else:
        uploadPostOk = False
        respInfo = {
            "errCode": resp.status_code,
            "errMsg": resp.text
        }
 
 
    logging.info("uploadPostOk=%s, respInfo=%s", uploadPostOk, respInfo)
    return uploadPostOk, respInfo
即可正常的把html即相关内容,通过WordPress的REST的api,即:
POST /wp-json/wp/v2/posts
新建,即发布对应文章。
返回后的内容是json,格式化后大概是:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
{
                "id": 70410,
                "date": "2020-02-27T21:11:49",
                "date_gmt": "2020-02-27T13:11:49",
                "guid": {
                    "rendered": "https://www.crifan.com/?p=70410",
                    "raw": "https://www.crifan.com/?p=70410"
                },
                "modified": "2020-02-27T21:11:49",
                "modified_gmt": "2020-02-27T13:11:49",
                "password": "",
                "slug": "mac_pip_change_source_server_to_spped_up_download",
                "status": "draft",
                "type": "post",
                "link": "https://www.crifan.com/?p=70410",
                "title": {
                    'raw": "【已解决】Mac中给pip更换源以加速下载",
                    "rendered": "【已解决】Mac中给pip更换源以加速下载"
                },
                "content": {
                    ...
供参考。

转载请注明:在路上 » 【已解决】Python把印象笔记帖子内容通过WordPress的REST的post接口去上传到crifan.com

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
83 queries in 0.371 seconds, using 22.30MB memory