Obsidian を使用して記事を書いている私は、Medium に公開するときにコンテンツを手動でコピーしてフォーマットする必要があることによく気づきます。このプロセスは、特に Markdown ファイルを扱う場合、時間がかかり、繰り返しになる可能性があります。ワークフローを合理化するために、Markdown ファイルの Medium への直接パブリッシュを自動化する Python スクリプトを開発することにしました。この記事では、Medium API を使用してプログラムで記事を公開し、プロセスをより高速かつ効率的に行う方法を皆さんと共有できることを嬉しく思います。
Medium の API を操作するには、まず統合トークンを生成する必要があります。このトークンにより、Python スクリプトが認証され、ユーザーに代わってアクションを実行できるようになります。
統合トークンを生成する手順:
トークンを手に入れたら、コーディングを開始する準備が整いました。
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 を正常に取得できたので、記事の公開に進むことができます。このプロセスには、記事のコンテンツといくつかのメタデータを含む POST リクエストを Medium の API に送信することが含まれます。
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 に移動して最新の下書きを確認できます。すべてが正しくフォーマットされていることを確認したら、直接公開してください!
データ関連の洞察を一緒に探求するために時間を割いていただきありがとうございます。ご協力に感謝いたします。
? LinkedIn で私とつながりましょう
以上がPython と Medium API を使用して記事を Medium に公開する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。