Telegram MTProto API Client Library for Python
Project description
Telegram MTProto API Client Library for Python
Table of Contents
About
Pyrogram is a fully functional Telegram Client Library written from the ground up in Python. It offers simple and complete access to the Telegram Messenger API and is designed for Python developers keen on building custom Telegram applications.
Features
Easy to setup: Pyrogram can be easily installed and upgraded using pip, requires a minimal set of dependencies (which are also automatically managed) and very few lines of code to get started with.
Easy to use: Pyrogram provides idiomatic, developer-friendly, clean and readable Python code (either generated or hand-written) making the Telegram API simple to use.
High level: Pyrogram automatically handles all the low-level details of communication with the Telegram servers by implementing the MTProto Mobile Protocol v2.0 and the mechanisms needed for establishing a reliable connection.
Fast: Pyrogram’s speed is boosted up by TgCrypto, a high-performance, easy-to-install Telegram Crypto Library written in C as a Python extension.
Updated: Pyrogram makes use of the latest Telegram API version, currently Layer 75.
Documented: Pyrogram API public methods are documented and resemble the well established Telegram Bot API, thus offering a familiar look to Bot developers.
Full API support: Beside the simple, bot-like methods offered by the Pyrogram API, the library also provides a complete, low-level access to every single Telegram API method.
Requirements
Python 3.3 or higher.
A Telegram API key.
Getting Started
Installation
You can easily install and upgrade the library using standard Python tools:
$ pip install --upgrade pyrogram
Or, with TgCrypto:
$ pip install --upgrade pyrogram[tgcrypto]
Configuration
Create a new config.ini file at the root of your working directory, copy-paste the following and replace the api_id and api_hash values with your own:
[pyrogram] api_id =
12345api_hash =0123456789abcdef0123456789abcdef
Usage
And here’s how Pyrogram looks like:
from pyrogram import Client client = Client("example") client.start() client.send_message("me", "Hi there! I'm using Pyrogram") client.send_photo("me", "/home/dan/pic.jpg", "Nice photo!") client.stop()
That’s all you need for getting started with Pyrogram. For more detailed information, please refer to the Documentation.
Documentation
The entire Pyrogram’s documentation resides at https://docs.pyrogram.ml.
Contribution
You are very welcome to contribute by either submitting pull requests or reporting issues/bugs as well as suggesting best practices, ideas, enhancements on both code and documentation. Any help is appreciated!
Feedback
Means for getting in touch:
License
Copyright (C) 2017-2018 Dan Tès <https://github.com/delivrance>
Licensed under the terms of the GNU Lesser General Public License v3 or later (LGPLv3+)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.