Skip to main content

Updated fork of 1.24 branch of Telethon, primarily used by TGPy

Project description

Telethon-v1.24

vanutp’s fork of v1.24 branch of telethon

Parse modes

  • Parse modes are reworked to be more accurate and more compatible with TDLib/Bot API.

HTML:

  • Custom emojis are supported via <tg-emoji> or <emoji> tags with document, document_id, document-id, emoji, emoji_id or emoji-id attributes.

  • Spoilers are supported via either <span class="tg-spoiler"> or <tg-spoiler> tags.

  • Pre blocks with language are supported via <pre><code class="language-<name>"> tags.

Markdown:

  • This implementation tries to be compatible with MarkdownV2 from TDLib/Bot API.

  • The unparser is ported from aiogram, the parser is written from scratch.

  • Escaping is done via backslash. Any character can be escaped.

  • All entities and escapes are ignored in pre and code blocks. That means that you can’t use ``` in pre block and ` in code block at all, but you can use any other characters inside them without escaping.

  • All entities and escapes are ignored in URLs (but not in URL captions). That means you can’t use ) in URL. For example, [*bold \*text*](https://example.com/\\)) is equivalent to <a href="https://example.com/\\"><b>bold *text</b></a>).

  • You must escape _*[]()~`|\ characters in any other context. Note that escaping >#+-={}.! characters is not required.

  • Custom emojis are supported via [👍](tg://emoji?id=6334815245336315702)' syntax.

Telethon

⭐️ Thanks everyone who has starred the project, it means a lot!

logo Telethon is an asyncio Python 3 MTProto library to interact with Telegram’s API as a user or through a bot account (bot API alternative).

What is this?

Telegram is a popular messaging application. This library is meant to make it easy for you to write Python programs that can interact with Telegram. Think of it as a wrapper that has already done the heavy job for you, so you can focus on developing an application.

Installing

pip3 install telethon

Creating a client

from telethon import TelegramClient, events, sync

# These example values won't work. You must get your own api_id and
# api_hash from https://my.telegram.org, under API Development.
api_id = 12345
api_hash = '0123456789abcdef0123456789abcdef'

client = TelegramClient('session_name', api_id, api_hash)
client.start()

Doing stuff

print(client.get_me().stringify())

client.send_message('username', 'Hello! Talking to you from Telethon')
client.send_file('username', '/home/myself/Pictures/holidays.jpg')

client.download_profile_photo('me')
messages = client.get_messages('username')
messages[0].download_media()

@client.on(events.NewMessage(pattern='(?i)hi|hello'))
async def handler(event):
    await event.respond('Hey!')

Next steps

Do you like how Telethon looks? Check out Read The Docs for a more in-depth explanation, with examples, troubleshooting issues, and more useful information.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Telethon-v1.24-1.24.16.tar.gz (587.8 kB view hashes)

Uploaded Source

Built Distribution

Telethon_v1.24-1.24.16-py3-none-any.whl (661.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page