{ "info": { "author": "Igor Ezersky", "author_email": "igor.ezersky.work@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "Morphy\n========\n\n`Morphy` is a Python library for morphological analysis. Presents a set of simple interfaces for segmentation, \ntokenization, lemmatization, and text filtering. Based on `nltk`, `spacy` and `pymorphy2`. \n\n\nFeatures\n--------\n\n* **Fully supported multilanguage** support (English, German, Spanish, Portuguese, French, Italian, Dutch, Russian)\n* Part-of-speech tagging\n* Sentence segmentation\n* Named entity recognition\n* Dependency parsing\n* Flexible customizability\n* Caching\n\nUsage\n------\n\n**Language detection**\n\n```python\nfrom morphy import Language\ntext = 'Lorem Ipsum is simply dummy text of the printing and typesetting industry'\nlang = Language(text=text)\nprint(lang)\n```\n\n**Sentence segmentation**\n\n```python\nfrom morphy import MultiLang\ntext = 'Lorem Ipsum is simply dummy text of the printing and typesetting industry'\nenglish_proc = MultiLang(lang='en')\ndoc = english_proc(text)\nfor sent in doc.sentences:\n print('%s\\n%s' % (sent, '\\n'.join(str(sent.tokens))))\n```\n\n**Lemmatization**\n\n```python\nfrom morphy import MultiLang\ntext = 'Lorem Ipsum is simply dummy text of the printing and typesetting industry'\nenglish_proc = MultiLang(lang='en')\ndoc = english_proc(text)\nfor token in doc.tokens:\n print('%s --> %s' % (token.text, token.lemma))\n```\n\n\nInstallation\n-------------\n\n**Option 1: Via PyPi**\n\nUsing pip, `morphy` releases are available as source packages and binary wheels (as of v0.1.0).\n\n```bash\npip install morphy\n```\n\nWhen using pip it is generally recommended to install packages in a virtual environment to avoid modifying system state:\n\n```bash\npython -m virtualenv venv\nsource venv/bin/activate\npip install morphy\n```\n\n**Option 2: Source Via Git**\n\n```bash\ngit clone git@bitbucket.org:igor_ezersky/morphy.git\ncd morphy\npython -m virtualenv venv\nsource venv/bin/activate\npython setup.py install\n```\n\n**Option 3: Source Zip**\n\nDownload a zip of the code via GitHub or PyPi. Then follow the same instructions in option 2.\n\n**IMPORTANT**\n\nAfter package was installed, it is necessary to download `nltk` and `spacy` data.\n\n```bash\npython -c \"import nltk; nltk.download('punkt')\"\npython -m spacy download en\npython -m spacy download xx\n# the line above should be repeated for each language that you need\n```\n\nYou can specify which `spacy` model would you like to install, check their [documentation](https://spacy.io/usage/).\n\nRequirements\n------------\n\n* Python 3.3+\n* [`spacy`](https://spacy.io)\n* [`nltk`](https://www.nltk.org)\n* [`cached_property`](https://github.com/pydanny/cached-property)\n* [`langdetect`](https://github.com/Mimino666/langdetect)\n\nNotes\n-----\n\nIf you are using Windows there can be some errors while installing `morphy` requirements (e.g. `ujson`, `cytoolz`):\n\n``\nerror: command 'cl.exe' failed: No such file or directory\n``\n\nManual installation from compiled binaries of this two packages can be a solution. You can find them at [this unofficial \nPython distributive repo](https://www.lfd.uci.edu/~gohlke/pythonlibs/). \n\n\nCurrent limitations\n-------------------\n1. Installing `spacy` models for each language is required.\n2. Downloading `nltk` tokenizer data is required.", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/igorezersky/morphy", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "morphy", "package_url": "https://pypi.org/project/morphy/", "platform": "", "project_url": "https://pypi.org/project/morphy/", "project_urls": { "Homepage": "https://github.com/igorezersky/morphy" }, "release_url": "https://pypi.org/project/morphy/0.2/", "requires_dist": null, "requires_python": "", "summary": "Smart tool for morphological analysis", "version": "0.2" }, "last_serial": 4698158, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "bf649df36e423aeb31fb89217f6a32b8", "sha256": "824e869a6a5a090a96f596e23657fdf4f871f23c7fd5ba62a0b21d340c3209fc" }, "downloads": -1, "filename": "morphy-0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "bf649df36e423aeb31fb89217f6a32b8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9073, "upload_time": "2018-12-09T14:07:30", "url": "https://files.pythonhosted.org/packages/8a/86/539b907c9f565931bb59d9ba8dee83633530536f3d18f5e7f071581cc272/morphy-0.1-py3-none-any.whl" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "7172513ba078243d357226852d2ab7b1", "sha256": "0bd8a29aaf6153058caaac487c06afdcd13f9c46d968a2f61a97fdc0ce6dfdc7" }, "downloads": -1, "filename": "morphy-0.2.tar.gz", "has_sig": false, "md5_digest": "7172513ba078243d357226852d2ab7b1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9262, "upload_time": "2019-01-15T09:40:16", "url": "https://files.pythonhosted.org/packages/eb/4b/e3dee0696eef3bac39eb6aeb0e50b41cbcf9e50dd4b9fb1961a1fae71c9e/morphy-0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "7172513ba078243d357226852d2ab7b1", "sha256": "0bd8a29aaf6153058caaac487c06afdcd13f9c46d968a2f61a97fdc0ce6dfdc7" }, "downloads": -1, "filename": "morphy-0.2.tar.gz", "has_sig": false, "md5_digest": "7172513ba078243d357226852d2ab7b1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9262, "upload_time": "2019-01-15T09:40:16", "url": "https://files.pythonhosted.org/packages/eb/4b/e3dee0696eef3bac39eb6aeb0e50b41cbcf9e50dd4b9fb1961a1fae71c9e/morphy-0.2.tar.gz" } ] }