لقد نجحنا لك غلاف لا يمكنك رفضه
لدينا مجتمع نابض بالحياة من المطورين الذين يساعدون بعضهم البعض في مجموعة Telegram الخاصة بنا. انضم إلينا!
ترقبوا تحديثات المكتبة والإصدارات الجديدة على قناة Telegram الخاصة بنا .
توفر هذه المكتبة واجهة Python النقية غير المتزامنة ل API Telegram BOT. إنه متوافق مع إصدارات Python 3.9+ .
بالإضافة إلى تطبيق API Pure ، تتميز هذه المكتبة بالعديد من الأساليب والاختصارات الراحة بالإضافة إلى عدد من الفئات عالية المستوى لجعل تطوير الروبوتات سهلة ومباشرة. وترد هذه الفئات في الجهاز الفرعي telegram.ext
.
بعد تثبيت المكتبة ، تأكد من مراجعة القسم الخاص بالعمل مع PTB.
جميع أنواع وطرق Telegram BOT API 7.11 مدعومة أصليًا من خلال هذه المكتبة. بالإضافة إلى ذلك ، لا يزال من الممكن استخدام وظائف API BOT غير المدرجة أصليًا كما هو موضح في ويكي.
يمكنك تثبيت أو ترقية python-telegram-bot
عبر
$ pip install python-telegram-bot --upgrade
لتثبيت مسبق الإصدار ، استخدم علامة- --pre
بالإضافة إلى ذلك.
يمكنك أيضًا تثبيت python-telegram-bot
من المصدر ، على الرغم من أن هذا ليس ضروريًا عادة.
$ git clone https://github.com/python-telegram-bot/python-telegram-bot
$ cd python-telegram-bot
$ pip install build
$ python -m build
لتمكينك من التحقق من أن ملف الإصدار الذي قمت بتنزيله قد تم توفيره بالفعل من قبل فريق python-telegram-bot
، لقد اتخذنا التدابير التالية.
بدءًا من V21.4 ، يتم توقيع جميع الإصدارات عبر Sigstore. يتم تحميل ملفات التوقيع المقابلة إلى صفحة إصدارات GitHub. للتحقق من التوقيع ، يرجى تثبيت عميل Sigstore Python واتباع إرشادات التحقق من التوقيعات من إجراءات GitHub. كمدخلات للمعلمة- --repository
، يرجى استخدام القيمة python-telegram-bot/python-telegram-bot
.
يتم توقيع الإصدارات السابقة مع مفتاح GPG. يتم تحميل التواقيع على كل من صفحة إصدارات GitHub ومشروع PYPI وينتهي مع لاحقة .asc
. يرجى العثور على المفاتيح العامة هنا. تم تسمية المفاتيح في التنسيق <first_version>-<last_version>.gpg
.
بالإضافة إلى ذلك ، تحتوي صفحة إصدار GitHub أيضًا على تجزئة SHA1 لملفات الإصدار في الملفات مع اللاحقة .sha1
.
يحاول python-telegram-bot
استخدام أقل عدد ممكن من تبعيات الطرف الثالث. ومع ذلك ، بالنسبة لبعض الميزات التي تستخدم مكتبة الطرف الثالث أكثر عاقضة من تنفيذ الوظيفة مرة أخرى. نظرًا لأن هذه الميزات اختيارية ، فإن تبعيات الطرف الثالث المقابل لا يتم تثبيتها افتراضيًا. بدلاً من ذلك ، يتم إدراجها على أنها تبعيات اختيارية. يسمح ذلك بتجنب تعارضات التبعية غير الضرورية للمستخدمين الذين لا يحتاجون إلى الميزات الاختيارية.
التبعية المطلوبة الوحيدة هي httpx ~ = 0.27 لـ telegram.request.HTTPXRequest
، الخلفية الافتراضية للشبكات.
يعتبر python-telegram-bot
أكثر فائدة عند استخدامها مع مكتبات إضافية. لتقليل تعارضات التبعية ، نحاول أن نكون ليبراليين من حيث متطلبات الإصدار على التبعيات (الاختيارية). من ناحية أخرى ، يتعين علينا ضمان استقرار python-telegram-bot
، وهذا هو السبب في أننا نطبق حدود الإصدار. إذا واجهت تعارضات التبعية بسبب هذه الحدود ، فلا تتردد في التواصل.
يمكن تثبيت PTB مع تبعيات اختيارية:
pip install "python-telegram-bot[passport]"
يقوم بتثبيت Cryptography> = 39.0.1 مكتبة. استخدم هذا ، إذا كنت ترغب في استخدام الوظائف المتعلقة بجوازات السفر Telegram.pip install "python-telegram-bot[socks]"
يقوم بتثبيت HTTPX [Socks]. استخدم هذا ، إذا كنت تريد العمل خلف خادم Socks5.pip install "python-telegram-bot[http2]"
يقوم بتثبيت httpx [http2]. استخدم هذا ، إذا كنت تريد استخدام HTTP/2.pip install "python-telegram-bot[rate-limiter]"
تثبيت aiolimiter ~ = 1.1.0. استخدم هذا ، إذا كنت ترغب في استخدام telegram.ext.AIORateLimiter
.pip install "python-telegram-bot[webhooks]"
يقوم بتثبيت Tornado ~ = 6.4 مكتبة. استخدم هذا ، إذا كنت تريد استخدام telegram.ext.Updater.start_webhook
/ telegram.ext.Application.run_webhook
.pip install "python-telegram-bot[callback-data]"
يقوم بتثبيت cachetools> = 5.3.3 ، <5.6.0 مكتبة. استخدم هذا ، إذا كنت ترغب في استخدام Callback_data التعسفي.pip install "python-telegram-bot[job-queue]"
يقوم بتثبيت مكتبة APSCHEDULER ~ = 3.10.4 وفرض PYTZ> = 2018.6 ، حيث يعتبر pytz
اعتمادًا على APScheduler
. استخدم هذا ، إذا كنت ترغب في استخدام telegram.ext.JobQueue
. لتثبيت تبعيات اختيارية متعددة ، افصلها عن طريق الفواصل ، على سبيل المثال pip install "python-telegram-bot[socks,webhooks]"
.
بالإضافة إلى ذلك ، يتم توفير اختصارات اثنين:
pip install "python-telegram-bot[all]"
يقوم بتثبيت جميع التبعيات الاختيارية.pip install "python-telegram-bot[ext]"
بتثبيت جميع التبعيات الاختيارية المرتبطة بـ telegram.ext
، أي [rate-limiter, webhooks, callback-data, job-queue]
. بمجرد تثبيت المكتبة ، يمكنك البدء في العمل معها - لذلك دعونا نبدأ!
يحتوي Wiki الخاص بنا على مقدمة إلى واجهة برمجة التطبيقات التي تشرح كيف يمكن الوصول إلى API BOT النقي عبر python-telegram-bot
. علاوة على ذلك ، فإن البرنامج التعليمي: يقدم الروبوت الأول مقدمة حول كيفية برمجة chatbots بسهولة بمساعدة وحدة telegram.ext
.
python-telegram-bot
. أنه يحتوي على أوصاف لجميع الفئات والوحدات النمطية والأساليب والوسائط المتاحة وكذلك Changelog.python-telegram-bot
وغيرها من الموارد المفيدة التي تتجاوز الوثائق التقنية.python-telegram-bot
. حتى لو لم يكن نهجك للتعلم ، فيرجى إلقاء نظرة على echobot.py
. إنها قاعدة فعلي لمعظم الروبوتات هناك. يتم إصدار رمز هذه الأمثلة إلى المجال العام ، بحيث يمكنك البدء عن طريق الاستيلاء على الكود والبناء فوقه.إذا كانت الموارد المذكورة أعلاه لا تجيب على أسئلتك أو تطغى عليك ببساطة ، فهناك عدة طرق للحصول على المساعدة.
منذ V20.0 ، تم تصميم python-telegram-bot
على أعلى وحدة Pythons asyncio
. نظرًا لأن asyncio
بشكل عام ، فإن python-telegram-bot
لا يهدف حاليًا إلى أن يكون آمنًا للخيط. تشمل الأجزاء الجديرة بالملاحظة من واجهة برمجة تطبيقات python-telegram-bots
التي من المحتمل أن تتسبب في مشكلات (مثل ظروف العرق) عند استخدامها في إعداد متعدد الخيوط:
telegram.ext.Application/Updater.update_queue
telegram.ext.ConversationHandler.check/handle_update
telegram.ext.CallbackDataCache
telegram.ext.BasePersistence
telegram.ext.filters
التي تسمح بإضافة/إزالة المستخدمين/الدردشات المسموح بها في وقت التشغيل مساهمات جميع الأحجام موضع ترحيب. يرجى مراجعة إرشادات المساهمة الخاصة بنا للبدء. يمكنك أيضًا المساعدة من خلال الإبلاغ عن الأخطاء أو طلبات الميزات.
في بعض الأحيان يتم سؤالنا عما إذا كنا نقبل التبرعات لدعم التطوير. بينما نقدر الفكر ، فإن الحفاظ على PTB هو هوايتنا ، وليس لدينا تكاليف تشغيل تقريبًا. لذلك ليس لدينا أي شيء تم إعداده لقبول التبرعات. إذا كنت لا تزال ترغب في التبرع ، فالاطلم منك التبرع لمشروع/مبادرة أخرى مفتوحة المصدر من اختيارك بدلاً من ذلك.
يمكنك نسخ البرنامج وتوزيعه وتعديله شريطة أن يتم وصف التعديلات وترخيصها مجانًا بموجب LGPL-3. لا يمكن إعادة توزيع الأعمال المشتقة (بما في ذلك التعديلات أو أي شيء مرتبط بشكل ثابت بالمكتبة) فقط بموجب LGPL-3 ، ولكن التطبيقات التي تستخدم المكتبة لا يجب أن تكون.