telegram-upload


Nametelegram-upload JSON
Version 0.7.1 PyPI version JSON
download
home_pagehttps://github.com/Nekmo/telegram-upload/
SummaryUpload (and download) files to Telegram up to 4 GiB using your account.
upload_time2023-08-04 19:39:20
maintainer
docs_urlNone
authorNekmo
requires_python
license
keywords telegram-upload telegram upload video
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            
.. image:: https://raw.githubusercontent.com/Nekmo/telegram-upload/master/logo.png
    :width: 100%

|


.. image:: https://img.shields.io/github/actions/workflow/status/Nekmo/telegram-upload/test.yml?style=flat-square&maxAge=2592000&branch=master
  :target: https://github.com/Nekmo/telegram-upload/actions?query=workflow%3ATests
  :alt: Latest Tests CI build status

.. image:: https://img.shields.io/pypi/v/telegram-upload.svg?style=flat-square
  :target: https://pypi.org/project/telegram-upload/
  :alt: Latest PyPI version

.. image:: https://img.shields.io/pypi/pyversions/telegram-upload.svg?style=flat-square
  :target: https://pypi.org/project/telegram-upload/
  :alt: Python versions

.. image:: https://img.shields.io/codeclimate/maintainability/Nekmo/telegram-upload.svg?style=flat-square
  :target: https://codeclimate.com/github/Nekmo/telegram-upload
  :alt: Code Climate

.. image:: https://img.shields.io/codecov/c/github/Nekmo/telegram-upload/master.svg?style=flat-square
  :target: https://codecov.io/github/Nekmo/telegram-upload
  :alt: Test coverage

.. image:: https://img.shields.io/github/stars/Nekmo/telegram-upload?style=flat-square
     :target: https://github.com/Nekmo/telegram-upload
     :alt: Github stars


###############
telegram-upload
###############
Telegram-upload uses your **personal Telegram account** to **upload** and **download** files up to **4 GiB** (2 GiB for
free users). Turn Telegram into your personal โ˜ cloud!

To **install ๐Ÿ”ง telegram-upload**, run this command in your terminal:

.. code-block:: console

    $ sudo pip3 install -U telegram-upload

This is the preferred method to install telegram-upload, as it will always install the most recent stable release.
๐Ÿ **Python 3.7-3.11** are tested and supported. There are other installation ways available like `Docker <#-docker>`_.
More info in the `๐Ÿ“• documentation <https://docs.nekmo.org/telegram-upload/installation.html>`_

.. image:: https://raw.githubusercontent.com/Nekmo/telegram-upload/master/telegram-upload-demo.gif
  :target: https://asciinema.org/a/592098
  :width: 100%

โ“ Usage
========
To use this program you need an Telegram account and your **App api_id & api_hash** (get it in
`my.telegram.org <https://my.telegram.org/>`_). The first time you use telegram-upload it requests your
๐Ÿ“ฑ **telephone**, **api_id** and **api_hash**. Bot tokens can not be used with this program (bot uploads are limited to
50MB).

To **send โฌ†๏ธ files** (by default it is uploaded to saved messages):

.. code-block:: console

    $ telegram-upload file1.mp4 file2.mkv

You can **download โคต๏ธ the files** again from your saved messages (by default) or from a channel. All files will be
downloaded until the last text message.

.. code-block:: console

    $ telegram-download

`Read the documentation <https://docs.nekmo.org/telegram-upload/usage.html#telegram-download>`_ for more info about the
options availables.

Interactive mode
----------------
The **interactive option** (``--interactive``) allows you to choose the dialog and the files to download or upload with
a **terminal ๐Ÿช„ wizard**. It even **supports mouse**!

.. code-block:: console

    $ telegram-upload --interactive    # Interactive upload
    $ telegram-download --interactive  # Interactive download

`More info in the documentation <https://docs.nekmo.org/telegram-upload/usage.html#interactive-mode>`_

Set group or chat
-----------------
By default when using telegram-upload without specifying the recipient or sender, telegram-upload will use your personal
chat. However you can define the ๐Ÿ‘จ destination. For file upload the argument is ``--to <entity>``. For example:

.. code-block::

    $ telegram-upload --to telegram.me/joinchat/AAAAAEkk2WdoDrB4-Q8-gg video.mkv

You can download files from a specific chat using the --from <entity> parameter. For example:

.. code-block::

    $ telegram-download --from username

You can see all `the possible values for the entity in the documentation <https://docs.nekmo.org/telegram-upload/usage.html#set-recipient-or-sender>`_.

Split & join files
------------------
If you try to upload a file that **exceeds the maximum supported** by Telegram by default, an error will occur. But you
can enable โœ‚ **split mode** to upload multiple files:

.. code-block:: console

    $ telegram-upload --large-files split large-video.mkv

Files split using split can be rejoined on download using:

.. code-block:: console

    $ telegram-download --split-files join

Find more help in `the telegram-upload documentation <https://docs.nekmo.org/telegram-upload/usage.html#split-files>`_.

Delete on success
-----------------
The ``--delete-on-success`` option allows you to โŒ **delete the Telegram message** after downloading the file. This is
useful to send files to download to your saved messages and avoid downloading them again. You can use this option to
download files on your computer away from home.

Configuration
-------------
Credentials are saved in ``~/.config/telegram-upload.json`` and ``~/.config/telegram-upload.session``. You must make
sure that these files are secured. You can copy these ๐Ÿ“ files to authenticate ``telegram-upload`` on more machines, but
it is advisable to create a session file for each machine.

More options
------------
Telegram-upload has more options available, like customizing the files thumbnail, set a caption message (including
variables) or configuring a proxy.
`Read the documentation <https://docs.nekmo.org/telegram-upload/usage.html#telegram-download>`_ for more info.

๐Ÿ’ก Features
===========

* **Upload** and **download** multiples files  (up to 4 GiB per file for premium users).
* **Interactive** mode.
* Add video **thumbs**.
* **Split** and **join** large files.
* **Delete** local or remote file on success.
* Use **variables** in the **caption** message.
* ... And **more**.

๐Ÿ‹ Docker
=========
Run telegram-upload without installing it on your system using Docker. Instead of ``telegram-upload``
and ``telegram-download`` you should use ``upload`` and ``download``. Usage::


    $ docker run -v <files_dir>:/files/
                 -v <config_dir>:/config
                 -it nekmo/telegram-upload:master
                 <command> <args>

* ``<files_dir>``: upload or download directory.
* ``<config_dir>``: Directory that will be created to store the telegram-upload configuration.
  It is created automatically.
* ``<command>``: ``upload`` and ``download``.
* ``<args>``: ``telegram-upload`` and ``telegram-download`` arguments.

For example::

    $ docker run -v /media/data/:/files/
                 -v $PWD/config:/config
                 -it nekmo/telegram-upload:master
                 upload file_to_upload.txt

โค๏ธ Thanks
=========
This project developed by `Nekmo <https://github.com/Nekmo>`_ & `collaborators <https://github.com/Nekmo/telegram-upload/graphs/contributors>`_ would not be possible without
`Telethon <https://github.com/LonamiWebs/Telethon>`_, the library used as a Telegram client.

Telegram-upload is licensed under the `MIT license <https://github.com/Nekmo/telegram-upload/blob/master/LICENSE>`_.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/Nekmo/telegram-upload/",
    "name": "telegram-upload",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "telegram-upload,telegram,upload,video",
    "author": "Nekmo",
    "author_email": "contacto@nekmo.com",
    "download_url": "https://files.pythonhosted.org/packages/3e/98/e5a54625d33cee151de7196b2f9c22bf082accb3add8e3d9a49a5f71042d/telegram-upload-0.7.1.tar.gz",
    "platform": "linux",
    "description": "\n.. image:: https://raw.githubusercontent.com/Nekmo/telegram-upload/master/logo.png\n    :width: 100%\n\n|\n\n\n.. image:: https://img.shields.io/github/actions/workflow/status/Nekmo/telegram-upload/test.yml?style=flat-square&maxAge=2592000&branch=master\n  :target: https://github.com/Nekmo/telegram-upload/actions?query=workflow%3ATests\n  :alt: Latest Tests CI build status\n\n.. image:: https://img.shields.io/pypi/v/telegram-upload.svg?style=flat-square\n  :target: https://pypi.org/project/telegram-upload/\n  :alt: Latest PyPI version\n\n.. image:: https://img.shields.io/pypi/pyversions/telegram-upload.svg?style=flat-square\n  :target: https://pypi.org/project/telegram-upload/\n  :alt: Python versions\n\n.. image:: https://img.shields.io/codeclimate/maintainability/Nekmo/telegram-upload.svg?style=flat-square\n  :target: https://codeclimate.com/github/Nekmo/telegram-upload\n  :alt: Code Climate\n\n.. image:: https://img.shields.io/codecov/c/github/Nekmo/telegram-upload/master.svg?style=flat-square\n  :target: https://codecov.io/github/Nekmo/telegram-upload\n  :alt: Test coverage\n\n.. image:: https://img.shields.io/github/stars/Nekmo/telegram-upload?style=flat-square\n     :target: https://github.com/Nekmo/telegram-upload\n     :alt: Github stars\n\n\n###############\ntelegram-upload\n###############\nTelegram-upload uses your **personal Telegram account** to **upload** and **download** files up to **4 GiB** (2 GiB for\nfree users). Turn Telegram into your personal \u2601 cloud!\n\nTo **install \ud83d\udd27 telegram-upload**, run this command in your terminal:\n\n.. code-block:: console\n\n    $ sudo pip3 install -U telegram-upload\n\nThis is the preferred method to install telegram-upload, as it will always install the most recent stable release.\n\ud83d\udc0d **Python 3.7-3.11** are tested and supported. There are other installation ways available like `Docker <#-docker>`_.\nMore info in the `\ud83d\udcd5 documentation <https://docs.nekmo.org/telegram-upload/installation.html>`_\n\n.. image:: https://raw.githubusercontent.com/Nekmo/telegram-upload/master/telegram-upload-demo.gif\n  :target: https://asciinema.org/a/592098\n  :width: 100%\n\n\u2753 Usage\n========\nTo use this program you need an Telegram account and your **App api_id & api_hash** (get it in\n`my.telegram.org <https://my.telegram.org/>`_). The first time you use telegram-upload it requests your\n\ud83d\udcf1 **telephone**, **api_id** and **api_hash**. Bot tokens can not be used with this program (bot uploads are limited to\n50MB).\n\nTo **send \u2b06\ufe0f files** (by default it is uploaded to saved messages):\n\n.. code-block:: console\n\n    $ telegram-upload file1.mp4 file2.mkv\n\nYou can **download \u2935\ufe0f the files** again from your saved messages (by default) or from a channel. All files will be\ndownloaded until the last text message.\n\n.. code-block:: console\n\n    $ telegram-download\n\n`Read the documentation <https://docs.nekmo.org/telegram-upload/usage.html#telegram-download>`_ for more info about the\noptions availables.\n\nInteractive mode\n----------------\nThe **interactive option** (``--interactive``) allows you to choose the dialog and the files to download or upload with\na **terminal \ud83e\ude84 wizard**. It even **supports mouse**!\n\n.. code-block:: console\n\n    $ telegram-upload --interactive    # Interactive upload\n    $ telegram-download --interactive  # Interactive download\n\n`More info in the documentation <https://docs.nekmo.org/telegram-upload/usage.html#interactive-mode>`_\n\nSet group or chat\n-----------------\nBy default when using telegram-upload without specifying the recipient or sender, telegram-upload will use your personal\nchat. However you can define the \ud83d\udc68 destination. For file upload the argument is ``--to <entity>``. For example:\n\n.. code-block::\n\n    $ telegram-upload --to telegram.me/joinchat/AAAAAEkk2WdoDrB4-Q8-gg video.mkv\n\nYou can download files from a specific chat using the --from <entity> parameter. For example:\n\n.. code-block::\n\n    $ telegram-download --from username\n\nYou can see all `the possible values for the entity in the documentation <https://docs.nekmo.org/telegram-upload/usage.html#set-recipient-or-sender>`_.\n\nSplit & join files\n------------------\nIf you try to upload a file that **exceeds the maximum supported** by Telegram by default, an error will occur. But you\ncan enable \u2702 **split mode** to upload multiple files:\n\n.. code-block:: console\n\n    $ telegram-upload --large-files split large-video.mkv\n\nFiles split using split can be rejoined on download using:\n\n.. code-block:: console\n\n    $ telegram-download --split-files join\n\nFind more help in `the telegram-upload documentation <https://docs.nekmo.org/telegram-upload/usage.html#split-files>`_.\n\nDelete on success\n-----------------\nThe ``--delete-on-success`` option allows you to \u274c **delete the Telegram message** after downloading the file. This is\nuseful to send files to download to your saved messages and avoid downloading them again. You can use this option to\ndownload files on your computer away from home.\n\nConfiguration\n-------------\nCredentials are saved in ``~/.config/telegram-upload.json`` and ``~/.config/telegram-upload.session``. You must make\nsure that these files are secured. You can copy these \ud83d\udcc1 files to authenticate ``telegram-upload`` on more machines, but\nit is advisable to create a session file for each machine.\n\nMore options\n------------\nTelegram-upload has more options available, like customizing the files thumbnail, set a caption message (including\nvariables) or configuring a proxy.\n`Read the documentation <https://docs.nekmo.org/telegram-upload/usage.html#telegram-download>`_ for more info.\n\n\ud83d\udca1 Features\n===========\n\n* **Upload** and **download** multiples files  (up to 4 GiB per file for premium users).\n* **Interactive** mode.\n* Add video **thumbs**.\n* **Split** and **join** large files.\n* **Delete** local or remote file on success.\n* Use **variables** in the **caption** message.\n* ... And **more**.\n\n\ud83d\udc0b Docker\n=========\nRun telegram-upload without installing it on your system using Docker. Instead of ``telegram-upload``\nand ``telegram-download`` you should use ``upload`` and ``download``. Usage::\n\n\n    $ docker run -v <files_dir>:/files/\n                 -v <config_dir>:/config\n                 -it nekmo/telegram-upload:master\n                 <command> <args>\n\n* ``<files_dir>``: upload or download directory.\n* ``<config_dir>``: Directory that will be created to store the telegram-upload configuration.\n  It is created automatically.\n* ``<command>``: ``upload`` and ``download``.\n* ``<args>``: ``telegram-upload`` and ``telegram-download`` arguments.\n\nFor example::\n\n    $ docker run -v /media/data/:/files/\n                 -v $PWD/config:/config\n                 -it nekmo/telegram-upload:master\n                 upload file_to_upload.txt\n\n\u2764\ufe0f Thanks\n=========\nThis project developed by `Nekmo <https://github.com/Nekmo>`_ & `collaborators <https://github.com/Nekmo/telegram-upload/graphs/contributors>`_ would not be possible without\n`Telethon <https://github.com/LonamiWebs/Telethon>`_, the library used as a Telegram client.\n\nTelegram-upload is licensed under the `MIT license <https://github.com/Nekmo/telegram-upload/blob/master/LICENSE>`_.\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "Upload (and download) files to Telegram up to 4 GiB using your account.",
    "version": "0.7.1",
    "project_urls": {
        "Download": "https://github.com/Nekmo/telegram-upload/archive/master.zip",
        "Homepage": "https://github.com/Nekmo/telegram-upload/"
    },
    "split_keywords": [
        "telegram-upload",
        "telegram",
        "upload",
        "video"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b28f64d641e14758500e01b4f0abc6671b119a6e7043f29802b60ba383b84ddd",
                "md5": "985769887f0dbbe2515b5dbc6cea27e5",
                "sha256": "a6561b90f7526fe73b6c65b25b91641c41c9a1ed144dba592331b2f85f131a24"
            },
            "downloads": -1,
            "filename": "telegram_upload-0.7.1-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "985769887f0dbbe2515b5dbc6cea27e5",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": null,
            "size": 48434,
            "upload_time": "2023-08-04T19:39:17",
            "upload_time_iso_8601": "2023-08-04T19:39:17.982068Z",
            "url": "https://files.pythonhosted.org/packages/b2/8f/64d641e14758500e01b4f0abc6671b119a6e7043f29802b60ba383b84ddd/telegram_upload-0.7.1-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3e98e5a54625d33cee151de7196b2f9c22bf082accb3add8e3d9a49a5f71042d",
                "md5": "a10e0433319dfb83c67fd0ef3c911841",
                "sha256": "5b4134ec11a01cc16e818729916cfbf27bc62412ac358c599e71858fdefc5174"
            },
            "downloads": -1,
            "filename": "telegram-upload-0.7.1.tar.gz",
            "has_sig": false,
            "md5_digest": "a10e0433319dfb83c67fd0ef3c911841",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 281769,
            "upload_time": "2023-08-04T19:39:20",
            "upload_time_iso_8601": "2023-08-04T19:39:20.085060Z",
            "url": "https://files.pythonhosted.org/packages/3e/98/e5a54625d33cee151de7196b2f9c22bf082accb3add8e3d9a49a5f71042d/telegram-upload-0.7.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-08-04 19:39:20",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Nekmo",
    "github_project": "telegram-upload",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "tox": true,
    "lcname": "telegram-upload"
}
        
Elapsed time: 0.10986s