Pure Python 3 MTProto API Telegram client library, for bots too!
Go to file
Dmitry Bukhta 0731a1d698 Raise ProxyConnectionError instead looping forever (#621)
We shouldn't try reconnecting when using a proxy if what's
unavailable is the proxy server (and not Telegram servers).
2018-02-20 17:05:02 +01:00
.github More friendly issue template 2017-09-28 12:20:56 +02:00
api Added custom errors, fixes to code generator 2016-09-05 18:35:12 +02:00
docs Further clarify the documentation (flood wait, lists and inputs) 2018-02-15 09:29:26 +01:00
readthedocs Update to v0.17.3 2018-02-19 15:29:02 +01:00
telethon Raise ProxyConnectionError instead looping forever (#621) 2018-02-20 17:05:02 +01:00
telethon_examples Update examples 2018-02-16 21:02:47 +01:00
telethon_generator Use req_pq_multi instead req_pq when creating an auth_key 2018-02-19 20:31:47 +01:00
telethon_tests Move utils.calc_msg_key into auth_key (cyclic imports py3.4) 2018-01-08 12:07:14 +01:00
.gitignore Update .gitignore to include docs/_build 2017-11-21 12:56:53 +01:00
.pre-commit-config.yaml Add pre-commit hooks configuration 2016-11-30 00:29:05 +03:00
LICENSE Updated README.md 2016-09-10 14:10:47 +02:00
MANIFEST.in Changed README.md to README.rst 2016-11-13 15:39:47 +01:00
optional-requirements.txt Use hachoir to determine audio and video metadata if possible 2018-02-17 13:01:12 +01:00
README.rst Accept message/media on .send_file, remove redundancy off README 2018-01-23 11:59:35 +01:00
requirements.txt Mention cryptg as an optional dependency 2018-02-17 12:14:23 +01:00
run_tests.py Make lint happier 2017-09-04 17:10:04 +02:00
setup.py Mention cryptg as an optional dependency 2018-02-17 12:14:23 +01:00
try_telethon.py Support configuring SOCKS proxy in the example 2017-06-17 00:17:51 +02:00

Telethon
========
.. epigraph::

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

**Telethon** is Telegram client implementation in **Python 3** which uses
the latest available API of Telegram.


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
----------

.. code:: sh

  pip3 install telethon


Creating a client
-----------------

.. code:: python

  from telethon import TelegramClient

  # 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
-----------

.. code:: python

  print(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_message_history('username')
  client.download_media(messages[0])


Next steps
----------

Do you like how Telethon looks? Check out
`Read The Docs <http://telethon.rtfd.io/>`_
for a more in-depth explanation, with examples,
troubleshooting issues, and more useful information.