Python-telegram-bot 电报机器人API

我们给你做了一个你不能拒绝的…

目录

引言

此库为以下对象提供纯Python接口Telegram Bot API它与Python版本3.6.8+兼容。PTB也可能在PyPy,尽管以前有很多问题。因此,PyPy不受官方支持

除了纯API实现之外,该库还提供了许多高级类,使bot的开发变得简单明了。这些类包含在telegram.ext子模块

纯API实现没有telegram.ext以独立软件包的形式提供python-telegram-bot-rawSee here for details.

注意事项

同时安装两者python-telegram-botpython-telegram-bot-raw联合使用会导致不良副作用,所以只需安装两者中的

电报API支持

所有类型和方法的Telegram Bot API5.3均受支持

正在安装

您可以使用以下命令安装或升级python-Telegram-bot:

$ pip install python-telegram-bot --upgrade

或者,您可以使用以下命令从源安装:

$ git clone https://github.com/python-telegram-bot/python-telegram-bot --recursive
$ cd python-telegram-bot
$ python setup.py install

如果您之前已经克隆了本地存储库,则应该在使用以下命令安装之前初始化添加的urllib3子模块:

$ git submodule update --init --recursive

可选依赖项

PTB可以与可选依赖项一起安装:

  • pip install python-telegram-bot[passport]安装cryptography图书馆。如果您要使用电报护照相关功能,请使用此功能
  • pip install python-telegram-bot[ujson]安装ujson图书馆。然后,它将被用于JSON去编码,与标准相比,这可以带来更快的速度json图书馆
  • pip install python-telegram-bot[socks]安装PySocks图书馆。如果要在Socks5服务器后面工作,请使用此选项

快速入门

我们的维基包含许多资源,可供您开始使用python-telegram-bot

其他参考文献:

以身作则学习

我们认为学习这个套餐最好的方法就是身体力行。这里有一些例子供您复习。即使这不是你的学习方法,也请看看echobot.py,它是大多数机器人的事实上的基地。最棒的是,这些示例的代码都发布到了公共领域,因此您可以从获取代码并在其上构建开始

参观this page要了解官方示例或查看wiki查看社区构建的其他机器人

日志记录

此库使用logging模块。要将日志记录设置为标准输出,请放入:

import logging
logging.basicConfig(level=logging.DEBUG,
                    format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')

在脚本的开头

还可以在应用程序中使用日志,方法是调用logging.getLogger()并设置所需的日志级别:

logger = logging.getLogger()
logger.setLevel(logging.INFO)

如果您需要调试日志,请执行以下操作:

logger.setLevel(logging.DEBUG)

文档

python-telegram-bot的文档存放在readthedocs.io

获取帮助

您可以通过以下几种方式获得帮助:

  1. 我们有一个充满活力的开发人员社区,他们在我们的Telegram group加入我们吧!
  2. 通过以下方式报告错误、请求新功能或提出问题creating an issuea discussion
  3. 我们的Wiki pages提供越来越多的资源
  4. 您甚至可以使用python-telegram-bot tag

贡献

欢迎各种规模的投稿。请查看我们的contribution guidelines开始吧。您还可以通过以下方式提供帮助reporting bugs

捐赠

偶尔会有人问我们是否接受捐款来支持这项发展。虽然我们很欣赏这个想法,但维护肺结核是我们的爱好,我们几乎没有运行成本。因此,我们没有任何接受捐款的设置。如果您仍想捐款,我们恳请您转而向您选择的另一个开源项目/倡议捐款。

许可证

您可以复制、分发和修改本软件,前提是修改的说明和许可是免费的,请参阅LGPL-3衍生品作品(包括修改或任何静态链接到库的内容)只能在LGPL-3下重新分发,但使用库的应用程序不必