{ "info": { "author": "Andrew Dorokhin", "author_email": "andrew@dorokhin.moscow", "bugtrack_url": null, "classifiers": [ "Development Status :: 1 - Planning", "Intended Audience :: Developers", "Intended Audience :: Education", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Libraries" ], "description": "[![Build Status](https://travis-ci.org/dorokhin/pyleo.svg?branch=master)](https://travis-ci.org/dorokhin/pyleo)\n[![PyPI version](https://badge.fury.io/py/pyleo.svg)](https://badge.fury.io/py/pyleo)\n![PyPI - Downloads](https://img.shields.io/pypi/dm/pyleo.svg?color=light-green)\n\n# PyLeo - Unofficial Lingualeo API python library\n\n## Installation\n\n```bash\npip install pyleo\n```\n\n## Example usage\n\n### CLI tool for upload dictionary (ororo.tv_dict*.csv) from Ororo.tv to LinguaLeo\n```bash\n\npyleo upload -f ororo.tv_dict.csv -u your@email.mail -p Your_password\n```\nWhere:\n- `-f` - Ororo.tv dictionary filename\n- `-u` - LinguaLeo username\n- `-p` - LinguaLeo password \n\n\n### Import as Python module\n```python\nimport json\nfrom pyleo.api import LeoApi\n\napi_instance = LeoApi('your@ema.il', 'password')\n\nif api_instance.need_auth:\n api_instance.auth() # Authorize user\n\n# add word to LinguaLeo user dictionary\napi_instance.add_word('placebo', '\u0418\u043c\u0438\u0442\u0430\u0446\u0438\u044f \u043b\u0435\u043a\u0430\u0440\u0441\u0442\u0432\u0430')\n\n# get word translation from LinguaLeo\ntranslation = json.loads(api_instance.get_translations('fake').decode('utf-8'))\n\nprint(json.dumps(translation, indent=4, sort_keys=True, ensure_ascii=False))\n```\n\n## sample API response\n\n```json\n\n{\n \"_hash\": \"0000.0\",\n \"error_msg\": \"\",\n \"experienceSkills\": null,\n \"meatballs\": 55,\n \"notify_count\": 2,\n \"questData\": {\n \"leoClothing\": 0,\n \"meatballs\": 55,\n \"task_actions_finished\": [\n [\n 1,\n 1\n ]\n ],\n \"task_num\": 1,\n \"task_num_prev\": 0,\n \"task_state\": 2\n },\n \"userdict3\": {\n \"is_user\": false,\n \"lang\": {\n \"current\": \"ru\",\n \"target\": \"en\"\n },\n \"lemmas\": [\n {\n \"lemma_id\": 15421,\n \"lemma_value\": \"FAKE\",\n \"speech_part\": {\n \"code\": \"Noun\",\n \"name\": \"\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435\",\n \"short_name\": \"\u0441\u0443\u0449.\"\n },\n \"speech_part_id\": 7\n },\n {\n \"lemma_id\": 15421,\n \"lemma_value\": \"FAKE\",\n \"speech_part\": {\n \"code\": \"Verb\",\n \"name\": \"\u0433\u043b\u0430\u0433\u043e\u043b\",\n \"short_name\": \"\u0433\u043b\u0430\u0433.\"\n },\n \"speech_part_id\": 12\n }\n ],\n \"sound_url\": \"https://audiocdn.lingualeo.com/v2/1/15421-631152008.mp3\",\n \"transcription\": \"fe\u026ak\",\n \"translations\": [\n {\n \"is_blame\": 0,\n \"is_owner\": false,\n \"is_user\": 0,\n \"rating\": 1,\n \"rating_avg\": 0.206543,\n \"rating_user_vote\": 0,\n \"source\": \"\",\n \"speech_part_id\": 0,\n \"star\": 1,\n \"translate_id\": 29600,\n \"translate_value\": \"\u043f\u043e\u0434\u0434\u0435\u043b\u043a\u0430\",\n \"translate_votes\": 56991\n },\n {\n \"is_blame\": 0,\n \"is_owner\": false,\n \"is_user\": 0,\n \"rating\": 0,\n \"rating_avg\": 0.2,\n \"rating_user_vote\": 0,\n \"source\": \"\",\n \"speech_part_id\": 0,\n \"star\": 3,\n \"translate_id\": 29604,\n \"translate_value\": \"\u043f\u0440\u0438\u043a\u0438\u0434\u044b\u0432\u0430\u0442\u044c\u0441\u044f\",\n \"translate_votes\": 14627\n },\n {\n \"is_blame\": 0,\n \"is_owner\": false,\n \"is_user\": 0,\n \"rating\": 0,\n \"rating_avg\": 0.2,\n \"rating_user_vote\": 0,\n \"source\": \"\",\n \"speech_part_id\": 0,\n \"star\": 3,\n \"translate_id\": 2630670,\n \"translate_value\": \"\u043c\u043e\u0448\u0435\u043d\u043d\u0438\u0447\u0430\u0442\u044c\",\n \"translate_votes\": 9581\n },\n {\n \"is_blame\": 0,\n \"is_owner\": false,\n \"is_user\": 0,\n \"rating\": 0,\n \"rating_avg\": 0.2,\n \"rating_user_vote\": 0,\n \"source\": \"\",\n \"speech_part_id\": 0,\n \"star\": 3,\n \"translate_id\": 135960,\n \"translate_value\": \"\u0444\u0430\u043b\u044c\u0448\u0438\u0432\u044b\u0439\",\n \"translate_votes\": 4921\n },\n {\n \"is_blame\": 0,\n \"is_owner\": false,\n \"is_user\": 0,\n \"rating\": 0,\n \"rating_avg\": 0.2,\n \"rating_user_vote\": 0,\n \"source\": \"\",\n \"speech_part_id\": 7,\n \"star\": 3,\n \"translate_id\": 4021671,\n \"translate_value\": \"\u043f\u043e\u0434\u0434\u0435\u043b\u043a\u0430\",\n \"translate_votes\": 3951\n }\n ],\n \"word_count\": 44926,\n \"word_id\": 15421,\n \"word_speech_parts\": {\n \"12\": {\n \"code\": \"Verb\",\n \"name\": \"\u0433\u043b\u0430\u0433\u043e\u043b\",\n \"short_name\": \"\u0433\u043b\u0430\u0433.\"\n },\n \"7\": {\n \"code\": \"Noun\",\n \"name\": \"\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435\",\n \"short_name\": \"\u0441\u0443\u0449.\"\n }\n },\n \"word_top\": 3,\n \"word_type\": 1,\n \"word_value\": \"fake\"\n },\n \"utcServerTime\": 1551600000\n}\n\n```\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/dorokhin/pyleo", "keywords": "pyleo api client lingualeo english-learning", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "pyleo", "package_url": "https://pypi.org/project/pyleo/", "platform": "", "project_url": "https://pypi.org/project/pyleo/", "project_urls": { "Homepage": "http://github.com/dorokhin/pyleo" }, "release_url": "https://pypi.org/project/pyleo/0.0.13/", "requires_dist": null, "requires_python": ">=3.4", "summary": "Unofficial Lingualeo API python library", "version": "0.0.13" }, "last_serial": 5106482, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "5e2f0dec84d34c00883489c5fc27ae91", "sha256": "2b9cfcdc667fcb35d5738709c48238a85b82c048d500d203354eda33a18ef63f" }, "downloads": -1, "filename": "pyleo-0.0.1.tar.gz", "has_sig": false, "md5_digest": "5e2f0dec84d34c00883489c5fc27ae91", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 1873, "upload_time": "2019-03-01T16:08:23", "url": "https://files.pythonhosted.org/packages/0f/2e/0c97a69587e6f5731953b7d71b95ace844905f5bc9b956bba640ce2eed86/pyleo-0.0.1.tar.gz" } ], "0.0.10": [ { "comment_text": "", "digests": { "md5": "d04123e191a6350e57dd83a966067304", "sha256": "6ad4cf9c78b7876d36920346830b0dabcc52ffc42a41822a3e530800eea9c4f4" }, "downloads": -1, "filename": "pyleo-0.0.10.tar.gz", "has_sig": false, "md5_digest": "d04123e191a6350e57dd83a966067304", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 5354, "upload_time": "2019-03-09T06:35:37", "url": "https://files.pythonhosted.org/packages/c6/f8/a24b61833eea4ff84ec5852d983ed9e0eb54f6b3a151b632fefbb8ccde2d/pyleo-0.0.10.tar.gz" } ], "0.0.11": [ { "comment_text": "", "digests": { "md5": "929dfae73f79b25ba3177e6ecd92e2bd", "sha256": "5868e5ae820235c308097610b2cd966a7c42a2efde86edb29e982e65d6f83081" }, "downloads": -1, "filename": "pyleo-0.0.11-py3.6.egg", "has_sig": false, "md5_digest": "929dfae73f79b25ba3177e6ecd92e2bd", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": ">=3.4", "size": 12051, "upload_time": "2019-03-10T02:34:59", "url": "https://files.pythonhosted.org/packages/b1/ff/b7f4f55a272763c757cae947faf88ecf19050f81215735727bab113ef3fa/pyleo-0.0.11-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "0abbb401920d4e2fd6fa2cb0cc542e5f", "sha256": "7a6fe43e5761435d44fa719d25cc27b3806e6bee6b75da490c5dedc14099a3ac" }, "downloads": -1, "filename": "pyleo-0.0.11-py3-none-any.whl", "has_sig": false, "md5_digest": "0abbb401920d4e2fd6fa2cb0cc542e5f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 7222, "upload_time": "2019-03-10T02:34:57", "url": "https://files.pythonhosted.org/packages/33/12/dadd6cc7906249e7e46a436150a79d7a1e11b3bc229845b20923326eaccf/pyleo-0.0.11-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fceaa1ea3909fb2f1008f450fe41130a", "sha256": "29cfdbc8ca74553000204ad9ca6db4381c87c5dc759b1e5edc42d3d0c0e30afa" }, "downloads": -1, "filename": "pyleo-0.0.11.tar.gz", "has_sig": false, "md5_digest": "fceaa1ea3909fb2f1008f450fe41130a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 5550, "upload_time": "2019-03-10T02:35:00", "url": "https://files.pythonhosted.org/packages/9e/da/c9f54d302a06b09f7d1f1db595a397221f037c73f63d85f54f2c8ec851dc/pyleo-0.0.11.tar.gz" } ], "0.0.12": [ { "comment_text": "", "digests": { "md5": "8a6faa02fdcb9bd7a203ce219bc2481f", "sha256": "7cd0a6f183e2ba9d7b0d9a4648ce28e3aa363af0093a59880a826f2a7108f18d" }, "downloads": -1, "filename": "pyleo-0.0.12-py3-none-any.whl", "has_sig": false, "md5_digest": "8a6faa02fdcb9bd7a203ce219bc2481f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 7222, "upload_time": "2019-03-10T07:38:58", "url": "https://files.pythonhosted.org/packages/c1/1a/d570fe67bf2dd7e51822005e215ef5d8e6f1b74fc1afd5f1a37294e4c77d/pyleo-0.0.12-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "24f6abd4ecd7774e290c35a3185d42f7", "sha256": "acbd3600c93b1eefd53e028a156c448829fd3f3b51e5bb1c94f48bb5ec1b491c" }, "downloads": -1, "filename": "pyleo-0.0.12.tar.gz", "has_sig": false, "md5_digest": "24f6abd4ecd7774e290c35a3185d42f7", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 5538, "upload_time": "2019-03-10T07:38:59", "url": "https://files.pythonhosted.org/packages/f2/81/e6961be65d3eb7a50c6613d9bdbe5494fa6dbf8d894fb735edd23b15dbff/pyleo-0.0.12.tar.gz" } ], "0.0.13": [ { "comment_text": "", "digests": { "md5": "4105147ef8a1bc663ad1b0dacc092084", "sha256": "8ad91a3d1264521dfb33395d1748ae8e51026b35d3bcf5be31a0da5989124f69" }, "downloads": -1, "filename": "pyleo-0.0.13-py3-none-any.whl", "has_sig": false, "md5_digest": "4105147ef8a1bc663ad1b0dacc092084", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 9297, "upload_time": "2019-04-06T04:28:56", "url": "https://files.pythonhosted.org/packages/62/d2/b9db4841eb17dab191344016ac4e2af6a23e69eda2a985b055654905e04f/pyleo-0.0.13-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b341cc7fee977c12924926b86405647b", "sha256": "7c90f4a570367ae64ef54e5d001e409f176a2fac154de97a02e8a6de8ba63a0b" }, "downloads": -1, "filename": "pyleo-0.0.13.tar.gz", "has_sig": false, "md5_digest": "b341cc7fee977c12924926b86405647b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 8335, "upload_time": "2019-04-06T04:28:57", "url": "https://files.pythonhosted.org/packages/a0/3a/5f91245e3d0463448c62583fdb25a73616ce08de471e75af2729dcde67ea/pyleo-0.0.13.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "1028508eb2760dcc8e1fbbd8168f93e9", "sha256": "7c5d53c6229d254669e8ebc055afa50c8c20c77d25f1e3ea048eabcf84e72fb7" }, "downloads": -1, "filename": "pyleo-0.0.2.tar.gz", "has_sig": false, "md5_digest": "1028508eb2760dcc8e1fbbd8168f93e9", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 3723, "upload_time": "2019-03-03T16:09:18", "url": "https://files.pythonhosted.org/packages/8a/52/987fb5c6c7a0e338020cc4f49622eadc70a643c9eec208c0a189b79bbbce/pyleo-0.0.2.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "bcbd7f7b735efc78a306d1515a8bd234", "sha256": "cf0c56815fe86262444b75ffb400481f381a9679cdb0678a18d4524a0f805401" }, "downloads": -1, "filename": "pyleo-0.0.5.tar.gz", "has_sig": false, "md5_digest": "bcbd7f7b735efc78a306d1515a8bd234", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 4549, "upload_time": "2019-03-04T01:19:59", "url": "https://files.pythonhosted.org/packages/49/c3/746716d56f425699c949461651ebcd85f60b0ba8435e08dc4d8e4263d1fe/pyleo-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "463792f2e3904efb811377ef5ddadf8c", "sha256": "acb576bf29874c9bd81d33e635c6b005c00817bb48da08e55ea57348c3d569dd" }, "downloads": -1, "filename": "pyleo-0.0.6.tar.gz", "has_sig": false, "md5_digest": "463792f2e3904efb811377ef5ddadf8c", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 4284, "upload_time": "2019-03-04T02:25:25", "url": "https://files.pythonhosted.org/packages/b1/99/583cb687bd27fffc8ffb86d460cfc35e36d8219d17a674d0e337ef508f6d/pyleo-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "43e0e38d4bf81063bb55dc5791e3818a", "sha256": "689a73d4dc385062d48fbe35614fe21d4c139e9891388b1bc28f725d70672e72" }, "downloads": -1, "filename": "pyleo-0.0.7.tar.gz", "has_sig": false, "md5_digest": "43e0e38d4bf81063bb55dc5791e3818a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 4451, "upload_time": "2019-03-04T14:16:13", "url": "https://files.pythonhosted.org/packages/b4/65/6e67fecb36f55914bbc12fd67dcf558c1b9dfafadd6a989695265167319f/pyleo-0.0.7.tar.gz" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "18b532684275552d9cf8b74fb1c250c4", "sha256": "44fa6587a52ff4594e778314348511ee70e6789be20653fa5d8bbd318bb57bdc" }, "downloads": -1, "filename": "pyleo-0.0.8.tar.gz", "has_sig": false, "md5_digest": "18b532684275552d9cf8b74fb1c250c4", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 4684, "upload_time": "2019-03-06T15:12:40", "url": "https://files.pythonhosted.org/packages/42/2a/d433814203e1fcc59ac1094f8ad216a017ff3eefdf21364522a5af6ddbe1/pyleo-0.0.8.tar.gz" } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "d6144aa36c7f1179165b575f0a73b33a", "sha256": "0407fd9732ecdaa8e8bd761b147764f7035cd70806ca07a25896e3282ad1c375" }, "downloads": -1, "filename": "pyleo-0.0.9.tar.gz", "has_sig": false, "md5_digest": "d6144aa36c7f1179165b575f0a73b33a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 5199, "upload_time": "2019-03-09T06:24:53", "url": "https://files.pythonhosted.org/packages/bc/b4/2e691c37a9a9080b27e931632b84b4ebc7cea9392123cd76d178c8a40175/pyleo-0.0.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "4105147ef8a1bc663ad1b0dacc092084", "sha256": "8ad91a3d1264521dfb33395d1748ae8e51026b35d3bcf5be31a0da5989124f69" }, "downloads": -1, "filename": "pyleo-0.0.13-py3-none-any.whl", "has_sig": false, "md5_digest": "4105147ef8a1bc663ad1b0dacc092084", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.4", "size": 9297, "upload_time": "2019-04-06T04:28:56", "url": "https://files.pythonhosted.org/packages/62/d2/b9db4841eb17dab191344016ac4e2af6a23e69eda2a985b055654905e04f/pyleo-0.0.13-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b341cc7fee977c12924926b86405647b", "sha256": "7c90f4a570367ae64ef54e5d001e409f176a2fac154de97a02e8a6de8ba63a0b" }, "downloads": -1, "filename": "pyleo-0.0.13.tar.gz", "has_sig": false, "md5_digest": "b341cc7fee977c12924926b86405647b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.4", "size": 8335, "upload_time": "2019-04-06T04:28:57", "url": "https://files.pythonhosted.org/packages/a0/3a/5f91245e3d0463448c62583fdb25a73616ce08de471e75af2729dcde67ea/pyleo-0.0.13.tar.gz" } ] }