هذا الدليل مخصص لبوتات Discord المكتوبة بـPython. تركيزه على requirements.txt وpip وتوافق Python وEntry File، وليس Node.js أو npm.
بوت Python يحتاج نفس أساسيات أي تطبيق مستضاف: Runtime متوافق وPackages مثبتة وCredentials محفوظة بشكل آمن وStartup Command يشير إلى الملف الصحيح.
جهز requirements.txt
ملف requirements يساعد السيرفر على معرفة مكتبات Python المطلوبة للمشروع.
discord.py
python-dotenv ثبت Python Packages
ثبت الحزم المطلوبة داخل بيئة Python الموجودة على السيرفر.
pip install -r requirements.txt اضبط Bot Token
لا تضع Token في مكان مكشوف. استخدم Environment Variables أو Secrets.
حدد Startup File
إذا ملف الدخول هو bot.py، أمر التشغيل الشائع يكون python bot.py.
python bot.py اقرأ Traceback
عند Crash، آخر Exception في Traceback عادةً تعطيك أهم معلومة عن الملف والسطر والسبب.
جهز requirements.txt بشكل صحيح
requirements.txt لازم يحتوي Packages اللي يحتاجها التطبيق على الاستضافة، لأن Package موجودة بجهازك الشخصي ما تنتقل تلقائياً للسيرفر.
خلي القائمة مرتبطة فعلاً بالمشروع حتى يكون Installation والتشخيص أوضح.
discord.py
python-dotenv افحص Python وثبت Dependencies
تأكد من Python Runtime المستخدم داخل الاستضافة وبعدها ثبت Packages من requirements.txt.
إذا Installation فشل اقرأ Error بالكامل قبل محاولة تشغيل البوت.
- ارفع ملفات Python وrequirements.txt.
- افحص Python Version داخل الاستضافة.
- ثبت Packages المطلوبة.
- تأكد أن Installation انتهى بدون Fatal Error.
- اضبط Environment Variables.
- شغل Python Entry File الصحيح.
python --version
pip install -r requirements.txt حدد Python Entry File
Startup Command لازم يشير للملف اللي يبدأ البوت فعلياً.
ممكن يكون bot.py أو main.py أو داخل Folder حسب Structure المشروع.
python bot.py تشخيص أخطاء Python
ModuleNotFoundError غالباً يعني Package غير متوفرة أو Import Name غلط، والTraceback يوضح File وLine اللي وصل عنده الخطأ.
اقرأ Traceback كامل وصلح السبب بدل تكرار Restart لنفس العملية.
- ModuleNotFoundError: افحص requirements وInstallation.
- SyntaxError: افحص الكود وPython Version.
- Invalid Token: افحص Secret أو Environment Variable.
- Wrong File Path: تأكد أن Entry File موجود.
الأسئلة الشائعة
ليش يطلع ModuleNotFoundError؟
غالباً الـPackage غير مثبتة أو اسم الـImport غير صحيح.
هل requirements.txt مهم؟
نعم لأنه يوثق Libraries المطلوبة ويسهل إعادة بناء البيئة.
هل Python يدعم .env؟
نعم، ويمكن أيضاً استخدام Secrets أو Environment Variables الخاصة بالاستضافة.