{ "info": { "author": "Meet Mangukiya", "author_email": "info@grammarbot.io", "bugtrack_url": null, "classifiers": [ "Development Status :: 1 - Planning", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy" ], "description": "\n# grammarbot-py\n\nGrammar Bot provides spelling and grammar check. Signup for an API key at\nhttps://www.grammarbot.io/ for increased usage limits. The API still works\nwith no key, but the daily usage limit is lower.\n\n## Installation\n\n```sh\npip install grammarbot\n```\n\n## Usage\n\nSee the example below\n\n```py\n# import the client library\nfrom grammarbot import GrammarBotClient\n\n# Creating the client\n# ===================\nclient = GrammarBotClient()\n\n# or, signup for an API Key to get higher usage limits here: https://www.grammarbot.io/\nclient = GrammarBotClient(api_key='my_api_key_here') # GrammarBotClient(api_key=my_api_key_here)\n\n# you can even set the base URI to a different server\nclient = GrammarBotClient(base_uri='http://backup.grammarbot.io:80')\n\n# Analyzing the text\n# ==================\n\n# There is only one method to perform the analysis, viz. GrammarBotClient.check\n# method.\n\ntext = 'I cant remember how to go their'\n\n# check the text, returns GrammarBotApiResponse object\nres = client.check(text) # GrammarBotApiResponse(matches=[GrammarBotMatch(offset=2, length=4, rule={'CANT'}, category={'TYPOS'}), GrammarBotMatch(offset=26, length=5, rule={'CONFUSION_RULE'}, category={'TYPOS'})])\n\n# Inspecting the GrammarBotApiResponse object\n# ===========================================\n\n# check detected language\nres.detected_language # \"en-US\"\n\n# check if the result is incomplete\nres.result_is_incomplete # False\n\n# see the suggestions / corrections suggested by the GrammarBot API\n# returns a list of GrammarBotMatch objects describing each replacement\nres.matches # [GrammarBotMatch(offset=2, length=4, rule={'CANT'}, category={'TYPOS'}), GrammarBotMatch(offset=26, length=5, rule={'CONFUSION_RULE'}, category={'TYPOS'})]\n\n\n# Inspecting the GrammarBotMatch object\n# =====================================\n\nmatch0 = match[0] # GrammarBotMatch(offset=2, length=4, rule={'CANT'}, category={'TYPOS'})\n\n\n# get replacement information\nmatch0.replacement_offset # 2\nmatch0.replacement_length # 4\n\n# get suggested replacements\nmatch0.replacements # [\"can't\", 'cannot']\n\n# get list of possible correct sentences after applying the replacements\nmatch0.corrections # [\"I can't remember how to go their\", 'I cannot remember how to go their']\n\n\n# get the rules, type and category information of the match\nmatch0.rule # 'CANT'\nmatch0.category # 'TYPOS'\nmatch0.type # 'Other'\n\n# getting a friendly message regarding the replacement suggestion\nmatch0.message # 'Did you mean \"can\\'t\" or \"cannot\"?'\n\n# Getting even more information\n# =============================\n\n# if the information provided by the class properties is not enough, you can\n# always access the complete original JSON response from GrammarBotApiResponse\n# object\nres.raw_json\n```\n\n## API docs\n\nYou can see the API documentation here: https://grammarbot-py.readthedocs.io/en/latest/\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": "https://github.com/grammarbot-api/grammarbot-py", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "grammarbot", "package_url": "https://pypi.org/project/grammarbot/", "platform": "", "project_url": "https://pypi.org/project/grammarbot/", "project_urls": { "Homepage": "https://github.com/grammarbot-api/grammarbot-py" }, "release_url": "https://pypi.org/project/grammarbot/0.2.0/", "requires_dist": [ "requests" ], "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "summary": "Free open source grammar and spelling checker.", "version": "0.2.0" }, "last_serial": 4595556, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "97efd85a051bcdfee9b456d8915375f9", "sha256": "6fa14b0e5b25338d092765456b834a917206d04e16b2a1cf06580e0e0bac3c3e" }, "downloads": -1, "filename": "grammarbot-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "97efd85a051bcdfee9b456d8915375f9", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 4584, "upload_time": "2018-12-13T11:26:57", "url": "https://files.pythonhosted.org/packages/21/a6/73d99787e8bf8f603c552afdf9b82aed25c07b1c03678d44187a6b91709d/grammarbot-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c1c9b7dfd66b40899153f533f24fe014", "sha256": "b5d1e3dd1baa39a5bdaf65f89cd07ae8e31a8e11e6eb567e191b7e9001f6b067" }, "downloads": -1, "filename": "grammarbot-0.1.0.tar.gz", "has_sig": false, "md5_digest": "c1c9b7dfd66b40899153f533f24fe014", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 4692, "upload_time": "2018-12-13T11:26:59", "url": "https://files.pythonhosted.org/packages/8d/82/cab2d8e4379fb99461dbb5ce5b5f19ad2032bc035171485de5da8e96dfce/grammarbot-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "870a9290828058e6b2efee40b0250a84", "sha256": "31a28bcff28acf182f875100d9877cf59fe0255855ffea25aff4d1ae8fbca9ac" }, "downloads": -1, "filename": "grammarbot-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "870a9290828058e6b2efee40b0250a84", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 4818, "upload_time": "2018-12-13T18:33:20", "url": "https://files.pythonhosted.org/packages/50/72/5eecde9948c24561c01677b8ee0573b3ba13432ce2b040f6cba911d2f18d/grammarbot-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ca19c20dac93c70ac44b62eb918d2e72", "sha256": "7fbce072aaac5b678777f04631af00ba0a952616e42f7da69fd91e4ce4e89a4d" }, "downloads": -1, "filename": "grammarbot-0.2.0.tar.gz", "has_sig": false, "md5_digest": "ca19c20dac93c70ac44b62eb918d2e72", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 4945, "upload_time": "2018-12-13T18:33:22", "url": "https://files.pythonhosted.org/packages/5f/62/194900baeab7282c891bae578fec075e717473f693073a530d3c95719bfb/grammarbot-0.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "870a9290828058e6b2efee40b0250a84", "sha256": "31a28bcff28acf182f875100d9877cf59fe0255855ffea25aff4d1ae8fbca9ac" }, "downloads": -1, "filename": "grammarbot-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "870a9290828058e6b2efee40b0250a84", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 4818, "upload_time": "2018-12-13T18:33:20", "url": "https://files.pythonhosted.org/packages/50/72/5eecde9948c24561c01677b8ee0573b3ba13432ce2b040f6cba911d2f18d/grammarbot-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ca19c20dac93c70ac44b62eb918d2e72", "sha256": "7fbce072aaac5b678777f04631af00ba0a952616e42f7da69fd91e4ce4e89a4d" }, "downloads": -1, "filename": "grammarbot-0.2.0.tar.gz", "has_sig": false, "md5_digest": "ca19c20dac93c70ac44b62eb918d2e72", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 4945, "upload_time": "2018-12-13T18:33:22", "url": "https://files.pythonhosted.org/packages/5f/62/194900baeab7282c891bae578fec075e717473f693073a530d3c95719bfb/grammarbot-0.2.0.tar.gz" } ] }