Telegram MTProto API Client Library for Python
Download
•
Wiki
•
Telegram Group
- Overview
- Requirements
- Installation
- Getting Started
- Development
- Documentation
- Contribution
- Feedback
- License
Pyrogram is a Client Library written from the ground up in Python, designed for Python application developers. It offers simple and complete access to the Telegram Messenger API. Pyrogram:
- Provides idiomatic, developer-friendly Python code (either generated or hand-written) making the Telegram API simple to use.
- Handles all the low-level details of communication with the Telegram servers by implementing the MTProto Mobile Protocol v2.0.
- Makes use of the latest Telegram API version (Layer 73).
- Can be easily installed and upgraded using
pip
. - Requires a minimal set of dependencies.
- Python 3.3 or higher.
- A Telegram API key.
You can easily install and upgrade the library using standard Python tools:
$ pip install --upgrade pyrogram
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 = 12345 api_hash = 0123456789abcdef0123456789abcdef
Then you can start with this:
from pyrogram import Client client = Client(session_name="example") client.start() # Get information about yourself print(client.get_me())
That's all you need for getting started with Pyrogram. For more detailed information, please refer to the Wiki:
The library is still in its early stages, thus lots of functionalities aiming to make working with Telegram's API easy are yet to be added and documented.
However, being the core functionalities already implemented, every Telegram API method listed in the API scheme can be used right away; the goal is therefore to build a powerful, simple to use, bot-like interface on top of those low-level functions.
Soon. For now, have a look at the pyrogram.Client
code to get some insights.
Currently you are able to easily:
send_message
forward_messages
edit_message_text
delete_messages
send_chat_action
- Some more...
as well as listening for updates and catching API errors.
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!
Means for getting in touch:
- Copyright (C) 2017 Dan Tès <https://github.com/delivrance>
- Licensed under the terms of the GNU Lesser General Public License v3 or later (LGPLv3+)