{ "info": { "author": "Lemon Lam", "author_email": "almk@rmntn.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: End Users/Desktop", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3 :: Only", "Topic :: Communications :: Chat" ], "description": "=======\nPyTgASU\n=======\n\nTelegram sticker sets creation automated (partially).\n\nFeatures\n--------\nPyTgASU frees you from selecting files and emojis repeatedly when creating sticker sets on Telegram.\n\nBetter yet, it makes sticker sets kind of \"distributable\" and \"installable\".\n\nMotivation\n----------\nThere was a `Telegram Stickers Uploader `_ (link dead, don't bother), but:\n\n1. It has limited choices of emojis\n - Well, 250. Really? This is not enough. UTR #51 4.0 defined 910 code points with Emoji_Presentation=Yes.\n\n2. It does not work with current Telegram Desktop\n - It does send commands through it, but it cannot upload anything. At least not for me.\n\nAnd now ``pytgasu`` comes to your rescue.\n\nInstallation\n------------\n\nRequirement\n+++++++++++\n- Python >= 3.6\n\nDependency\n++++++++++\n- `Telethon `_\n- `Click `_\n- `Pillow `_\n\nUse ``pip`` to install:\n\n.. code-block:: bash\n\n $ pip install pytgasu\n\nor\n\n.. code-block:: bash\n\n $ git clone https://github.com/alemonmk/pytgasu.git\n $ cd pytgasu\n $ pip install .\n\nUsage\n-----\n\nPrepare set\n+++++++++++\n``pytgasu`` needs to work with set definition file for each sticker set you want to create.\n\nTelegram also has limitations on sticker images.\n\nYou can take care of all above with this command:\n\n.. code-block:: bash\n\n $ pytgasu prepare ...\n\nAt first launch it will ask you paths to some tools (namely pngquant and waifu2x-caffe), if you prefer not using any of them you can just leave it empty. This saves a yaml-formatted configuration file at ``~/.pytgasu/asu.cfg``.\n\nYou need to provide a descriptive name of the set, and a short name that enables you to share it with ``https://t.me/addsticker/``.\n\nFinally open the generated ``.def`` file(s) with text editor of your choice to assign emojis (and **only** emojis, preferably copied from Telegram).\n\nUpload sticker sets\n+++++++++++++++++++\nOnce you are done editing the ``.def`` file(s), let ``pytgasu`` do the heavy lifting.\n\n.. code-block:: bash\n\n $ pytgasu upload [-s] (|)...\n\nBy specifying ``-s``, you will be automatically subscribed to the set once it's uploaded.\n\nYou have to log in to Telegram at the first run. A session file will be created at ``~/.pytgasu/asu.session``.\n\nLog out of Telegram\n+++++++++++++++++++\nIf you have no more business with ``pytgasu``, you may want to log it out from Telegram.\n\n.. code-block:: bash\n\n $ pytgasu logout\n\nThis terminates your session to Telegram, deletes the stored session file and its folder, saving you few clicks in other Telegram client and file manager.\n\nLimitions & TODOs\n-----------------\n1. No GUI.\n - Well...I hope you are crazy enough to make one for me ;)\n\nContributing\n------------\nYou may request new features, report bugs or leave suggestions through `GitHub issue `_, or just code and fire a `pull request `_.\n\nYou may contact me via e-mail if you want to stay private or just don't bother with GitHub.\n\nStuff in need\n+++++++++++++\n- Tests. Preferably something ``nose`` uses.\n- Better documents. There's not much to document though ...\n- Feature requests. Keep it simple, don't complicate this tool.\n- Debug. I'm not that exhaustive and may leave edge cases here and there.\n\nAuthor\n------\n\\(c) 2017 Lemon Lam <'%s@%s' % ('almk', 'rmntn.net')>\n\nLicense\n-------\nLicensed under `GNU General Public License Version 3 `_.\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/alemonmk/pytgasu", "keywords": "Telegram,stickers", "license": "GPLv3", "maintainer": "", "maintainer_email": "", "name": "pytgasu", "package_url": "https://pypi.org/project/pytgasu/", "platform": "", "project_url": "https://pypi.org/project/pytgasu/", "project_urls": { "Homepage": "https://github.com/alemonmk/pytgasu" }, "release_url": "https://pypi.org/project/pytgasu/0.2.1/", "requires_dist": [ "setuptools (>=30.3.0)", "Telethon (==0.18.1.1)", "click", "Pillow", "nose; extra == 'test'", "coverage; extra == 'test'" ], "requires_python": ">=3.5", "summary": "Telegram sticker sets creation automated (partially).", "version": "0.2.1" }, "last_serial": 4272668, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "c72bb1e0b14abd868bdbb21dc4aac9e3", "sha256": "04667fc7a5a8d42844cb96b3c78b3641d3fe215cf5aae5846cf0c01e8b9aa0e7" }, "downloads": -1, "filename": "pytgasu-0.1.1-py3-none-any.whl", "has_sig": true, "md5_digest": "c72bb1e0b14abd868bdbb21dc4aac9e3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 15969, "upload_time": "2017-05-02T18:24:09", "url": "https://files.pythonhosted.org/packages/a4/bd/ffd8d26bb92b043af144480d70663e5e0de2cb2130f4477313cfe9be2fc1/pytgasu-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ab0b6db056dd05de56bb1c0cf4040040", "sha256": "7c13474fdc1996241798df5d1d99b10eb02cc23e5b25034465b655a42a577f0c" }, "downloads": -1, "filename": "pytgasu-0.1.1.tar.gz", "has_sig": true, "md5_digest": "ab0b6db056dd05de56bb1c0cf4040040", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 10779, "upload_time": "2017-05-02T18:24:12", "url": "https://files.pythonhosted.org/packages/b0/60/625a1a78cae0dca2646c7a13887762182eda76d0c1fa213c2b659ed4dc6b/pytgasu-0.1.1.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "1b6743826f2232790590558e93245c81", "sha256": "85d1c7f2710691abad84cc253504c57fcf8a6f3ec9bf1f5467466e88257564a4" }, "downloads": -1, "filename": "pytgasu-0.2.0-py3-none-any.whl", "has_sig": true, "md5_digest": "1b6743826f2232790590558e93245c81", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 17681, "upload_time": "2017-05-27T15:41:00", "url": "https://files.pythonhosted.org/packages/87/b4/8f7434b341c27164b46812eef27f726ec507e2f35c3607c33452a3d7a33d/pytgasu-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "75d3022a4a45d63029f8987123ab8120", "sha256": "5f96a0272aac5bc6cd63b9c03ae06cc6810b1d57e2f117ecc9d4d8143fd9cd1f" }, "downloads": -1, "filename": "pytgasu-0.2.0.tar.gz", "has_sig": true, "md5_digest": "75d3022a4a45d63029f8987123ab8120", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 12351, "upload_time": "2017-05-27T15:41:02", "url": "https://files.pythonhosted.org/packages/cf/1b/c72730c6640e37451228025dac2b8838d1ec4f2191aaf5c90a1082e9d75f/pytgasu-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "0a4f3cf024f1555404d6498fe9f80f45", "sha256": "fb2a0f5629d462986d3887ec0be7c6d61638a99e10162160705d2945446b6f80" }, "downloads": -1, "filename": "pytgasu-0.2.1-py3-none-any.whl", "has_sig": true, "md5_digest": "0a4f3cf024f1555404d6498fe9f80f45", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 21611, "upload_time": "2018-09-14T14:56:38", "url": "https://files.pythonhosted.org/packages/b3/b2/980835ae36a67df4cd6c203b2872858f2dbadc5391f34b50a71ebdc58096/pytgasu-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "39e59c866d3bbca2bd0e0a8375ecbae1", "sha256": "aa91c892a8669ebf39cfa641be6dadf2bd9e63011fd03698dd09142d1e8e19d2" }, "downloads": -1, "filename": "pytgasu-0.2.1.tar.gz", "has_sig": true, "md5_digest": "39e59c866d3bbca2bd0e0a8375ecbae1", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 13304, "upload_time": "2018-09-14T14:56:40", "url": "https://files.pythonhosted.org/packages/ca/1b/81beb3729550aab3fac849b0d61355bd9b4b8333a13f530034790707ef82/pytgasu-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0a4f3cf024f1555404d6498fe9f80f45", "sha256": "fb2a0f5629d462986d3887ec0be7c6d61638a99e10162160705d2945446b6f80" }, "downloads": -1, "filename": "pytgasu-0.2.1-py3-none-any.whl", "has_sig": true, "md5_digest": "0a4f3cf024f1555404d6498fe9f80f45", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 21611, "upload_time": "2018-09-14T14:56:38", "url": "https://files.pythonhosted.org/packages/b3/b2/980835ae36a67df4cd6c203b2872858f2dbadc5391f34b50a71ebdc58096/pytgasu-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "39e59c866d3bbca2bd0e0a8375ecbae1", "sha256": "aa91c892a8669ebf39cfa641be6dadf2bd9e63011fd03698dd09142d1e8e19d2" }, "downloads": -1, "filename": "pytgasu-0.2.1.tar.gz", "has_sig": true, "md5_digest": "39e59c866d3bbca2bd0e0a8375ecbae1", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 13304, "upload_time": "2018-09-14T14:56:40", "url": "https://files.pythonhosted.org/packages/ca/1b/81beb3729550aab3fac849b0d61355bd9b4b8333a13f530034790707ef82/pytgasu-0.2.1.tar.gz" } ] }