باعتباري شخصًا يستخدم Obsidian لكتابة المقالات، غالبًا ما أجد نفسي بحاجة إلى نسخ المحتوى الخاص بي وتنسيقه يدويًا عند النشر على Medium. يمكن أن تستغرق هذه العملية وقتًا طويلاً ومتكررة، خاصة عند التعامل مع ملفات Markdown. لتبسيط سير العمل، قررت تطوير برنامج Python النصي الذي يقوم بأتمتة نشر ملفات Markdown مباشرة إلى Medium. في هذه المقالة، يسعدني أن أشارككم كيفية نشر المقالات برمجيًا باستخدام Medium API، مما يجعل العملية أسرع وأكثر كفاءة.
للتفاعل مع واجهة برمجة التطبيقات الخاصة بـ Medium، تحتاج أولاً إلى إنشاء رمز مميز للتكامل. سيسمح هذا الرمز لبرنامج Python النصي الخاص بك بالمصادقة وتنفيذ الإجراءات نيابةً عنك.
خطوات إنشاء رمز التكامل:
مع وجود الرمز المميز في متناول اليد، أنت جاهز لبدء البرمجة.
إليك كود Python الذي ستستخدمه للتفاعل مع Medium API:
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 لجلب معلومات المستخدم الخاصة بك. يتضمن الرد تفاصيل مثل معرف المستخدم الخاص بك، وهو مطلوب لنشر المحتوى.
الآن بعد أن نجحت في استرداد معرف المستخدم الخاص بك من Medium API، يمكنك الانتقال إلى نشر مقال. تتضمن العملية إرسال طلب POST إلى واجهة برمجة تطبيقات Medium مع محتوى المقالة وبعض البيانات الوصفية.
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
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3