首页  >  文章  >  后端开发  >  如何使用 Python 和 Medium API 将文章发布到 Medium

如何使用 Python 和 Medium API 将文章发布到 Medium

WBOY
WBOY原创
2024-08-31 22:31:03398浏览

介绍

作为使用 Obsidian 撰写文章的人,我经常发现自己在发布到 Medium 时需要手动复制和格式化我的内容。此过程可能非常耗时且重复,尤其是在处理 Markdown 文件时。为了简化我的工作流程,我决定开发一个 Python 脚本,自动将 Markdown 文件直接发布到 Medium。在本文中,我很高兴与您分享如何使用 Medium API 以编程方式发布文章,使该过程更快、更高效。

设置Medium API

要与 Medium 的 API 交互,您首先需要生成集成令牌。此令牌将允许您的 Python 脚本代表您进行身份验证并执行操作。

生成集成令牌的步骤:

  1. 转到您的中等安全性和应用程序。
  2. 向下滚动到“集成令牌”部分。
  3. 点击“获取集成令牌”。
  4. 复制生成的token并妥善保管;你的脚本需要它。

有了令牌在手,您就可以开始编码了。

获取用户的详细信息和出版物

这是您将用于与 Medium API 交互的 Python 代码:

import requests  

# Replace these with your actual Medium integration token and file path  
MEDIUM_TOKEN = 'your_medium_integration_token'

headers = {  
    'Authorization': f'Bearer {MEDIUM_TOKEN}',  
    'Content-Type': 'application/json',  
    'Accept': 'application/json',  
    'host': 'api.medium.com',  
    'Accept-Charset': 'utf-8'  
}  
url = '''https://api.medium.com/v1/me'''  
response = requests.get(url=url, headers=headers)  

print('status_code is: ',response.status_code)  
print('response text:', response.json())  
print('userId:', response.json()['data']['id'])

获取用户信息
当您运行该脚本时,它会向 Medium 的 API 发送请求以获取您的用户信息。响应包括您的用户 ID 等详细信息,这是发布内容所必需的。

发表文章

现在您已成功从 Medium API 检索到您的用户 ID,您可以继续发布文章。该过程涉及向 Medium 的 API 发送包含文章内容和一些元数据的 POST 请求。

import requests
import json

# Replace with your actual Medium integration token and user ID
MEDIUM_TOKEN = 'your_medium_integration_token'
USER_ID = 'your_user_id'

headers = {
    'Authorization': f'Bearer {MEDIUM_TOKEN}',
    'Content-Type': 'application/json',
    'Accept': 'application/json',
    'host': 'api.medium.com',
    'Accept-Charset': 'utf-8'
}

url = f'https://api.medium.com/v1/users/{USER_ID}/posts'

# Article content and metadata
data = {
    "title": "Your Article Title",
    "contentFormat": "markdown",  # Choose 'html', 'markdown', or 'plain'
    "content": "# Hello World!\nThis is my first article using the Medium API.",
    "tags": ["python", "api", "medium"],
    "publishStatus": "draft"  # Choose 'public' or 'draft'
}

# Sending the POST request
response = requests.post(url=url, headers=headers, data=json.dumps(data))

print('Status code:', response.status_code)
print('Response:', response.json())

现在您可以前往 Medium 查看您的最新草稿。确认所有内容格式正确后,您可以直接发布!


探索更多

How to Publish an Article to Medium Using Python and the Medium API

刘卢卡

你好呀! ?我是 Luca,一名对所有数据充满热情的商业智能开发人员。精通 Python、SQL、Power BI、Tableau、SAP 业务对象。

感谢您花时间与我一起探索与数据相关的见解。感谢您的参与。

?在 LinkedIn 上与我联系

How to Publish an Article to Medium Using Python and the Medium API

以上是如何使用 Python 和 Medium API 将文章发布到 Medium的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn