CSRF سيء في طلب من جلسة مستنسخة باستخدام Python

أنا مشرف على منتدى Discourse وأرغب في كتابة برنامج بلغة بايثون يقوم بنسخ ملفات تعريف ارتباط الجلسة (session cookies) من المتصفح وتنفيذ إجراء مستخدم بسيط مثل الإعجاب بمنشور. لقد نجحت في نسخ الجلسة وتمكنت من استخدام طلبات GET للوصول إلى أي صفحة، بما في ذلك الأقسام الخاصة (لذا أعرف أن الجلسة قد تم نسخها بنجاح)، ولكن عندما حاولت ببساطة الإعجاب بمنشور باستخدام طلب POST، حصلت على رسالة “Bad CSRF”. وعند التحقيق، لاحظت أنه لم يتم إنشاء رمز CSRF في الطلب. أود معرفة سبب توليد رموز CSRF في المتصفح ولكن ليس في هذه الجلسة المنسوخة. هل توجد طريقة للحصول على رمز CSRF للطلب؟ الكود البسيط الخاص بي أدناه.

import requests
import browsercookie

cj = browsercookie.firefox()

r = requests.post("https://somediscoursesite.com/post_actions", data={'id':'theid','post_action_type_id':'2','flag_topic':'false'}, cookies=cj)

print(r.status_code)
print(r.request.headers)

هل سيستخدم هذا من قبل جميع المستخدمين، أم من قبل الموظفين فقط، أم من قبلك أنت فقط؟ ما أود التوضيح هو أنه إذا كان هذا مخصصًا لك فقط للمساعدة في الإشراف، فسيكون الأفضل استخدام مفتاح API أو إنشاء مفاتيح API محددة لمستخدمي الموظفين المعنيين.

أقصد استخدامه من قبل أي مستخدم مسجل الدخول. في الأساس، أريد استخلاص جلسة المستخدم والسماح له بتنفيذ إجراءات برمجياً باستخدام بايثون، وتحديداً الإعجاب بالمنشورات. أعرف أن استخدام مفتاح المشرف سيكون أسهل بكثير، لكنني أريد أن يكون متاحاً لأي مستخدم، وبما أن المستخدم يمكنه الإعجاب بمنشور في متصفحه، فلماذا لا يمكن تنفيذ ذلك برمجياً من جهازه الخاص باستخدام جلسة مستنسخة في موجه الأوامر؟