{ "info": { "author": "Jason Stitt", "author_email": "js@jasonstitt.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Other Environment", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python", "Programming Language :: Python :: 3", "Topic :: Text Processing :: Markup :: HTML", "Topic :: Text Processing :: Markup :: XML", "Topic :: Utilities" ], "description": "`PyTidyLib`_ is a Python package that wraps the `HTML Tidy`_ library. This\nallows you, from Python code, to \"fix\" invalid (X)HTML markup. Some of the\nlibrary's many capabilities include:\n\n* Clean up unclosed tags and unescaped characters such as ampersands\n* Output HTML 4 or XHTML, strict or transitional, and add missing doctypes\n* Convert named entities to numeric entities, which can then be used in XML\n documents without an HTML doctype.\n* Clean up HTML from programs such as Word (to an extent)\n* Indent the output, including proper (i.e. no) indenting for ``pre`` elements,\n which some (X)HTML indenting code overlooks.\n\nChanges\n=======\n\n* 0.3.2: Initialization bug fix\n\n* 0.3.1: find_library support while still allowing a list of library names\n\n* 0.3.0: Refactored to use Tidy and PersistentTidy classes while keeping the\nfunctional interface (which will lazily create a global Tidy() object) for\nbackward compatibility. You can now pass a list of library names and base\noptions when instantiating Tidy. The keep_doc argument is now deprecated\nand does nothing; use PersistentTidy.\n\n* 0.2.4: Bugfix for a strange memory allocation corner case in Tidy.\n\n* 0.2.3: Python 3 support (2 + 3 cross compatible) with passing Tox tests.\n\nSmall example of use\n====================\n\nThe following code cleans up an invalid HTML document and sets an option::\n\n from tidylib import tidy_document\n document, errors = tidy_document('''

fõo ''',\n options={'numeric-entities':1})\n print document\n print errors\n\nDocs\n====\n\nDocumentation is shipped with the source distribution and is available at\nthe `PyTidyLib`_ web page.\n\n.. _`HTML Tidy`: http://tidy.sourceforge.net/\n.. _`PyTidyLib`: http://countergram.com/open-source/pytidylib/", "description_content_type": null, "docs_url": "https://pythonhosted.org/pytidylib/", "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://countergram.com/open-source/pytidylib/", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "pytidylib", "package_url": "https://pypi.org/project/pytidylib/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/pytidylib/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://countergram.com/open-source/pytidylib/" }, "release_url": "https://pypi.org/project/pytidylib/0.3.2/", "requires_dist": null, "requires_python": null, "summary": "Python wrapper for HTML Tidy (tidylib) on Python 2 and 3", "version": "0.3.2" }, "last_serial": 2463207, "releases": { "0.1.2": [ { "comment_text": "", "digests": { "md5": "7578a439b4f15f8223c37b13b11a7d07", "sha256": "65e5c5f2837c3d17a8a82a07401da62b98a584e149ba65c93b9a3cc79ed74730" }, "downloads": -1, "filename": "pytidylib-0.1.2.tar.gz", "has_sig": false, "md5_digest": "7578a439b4f15f8223c37b13b11a7d07", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 149348, "upload_time": "2009-08-18T23:25:33", "url": "https://files.pythonhosted.org/packages/03/ce/02c659f90d12dd3139ee4d2301ef09a45338a1c78cb8d8028091b3dde423/pytidylib-0.1.2.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "4d0e6a4d0a9c620a3a423fd563fc44ff", "sha256": "3eada081d1aad973275d42c80dbdac775f4db0e32ce63758bf1e30b1c203537b" }, "downloads": -1, "filename": "pytidylib-0.2.0.tar.gz", "has_sig": false, "md5_digest": "4d0e6a4d0a9c620a3a423fd563fc44ff", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 157692, "upload_time": "2014-07-15T15:17:22", "url": "https://files.pythonhosted.org/packages/36/1a/306bc6f164d48bf2d88755e5a0fea23e25a4475ae4ee167942c4915f3f98/pytidylib-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "21800afbf2f98d3a79159760fa1f670a", "sha256": "76f318be51c91f5d38aa585d2829ce2b35eead3c6890f303f4f71493eaad48af" }, "downloads": -1, "filename": "pytidylib-0.2.1.tar.gz", "has_sig": false, "md5_digest": "21800afbf2f98d3a79159760fa1f670a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 157860, "upload_time": "2014-07-15T15:16:10", "url": "https://files.pythonhosted.org/packages/6c/e5/222d419a0a4d4aaf5305ad1dbd1cf8406f952d8a153c76c3aa5a3eefe08a/pytidylib-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "0d142f9a9ff81d75b55e339f8480b6c0", "sha256": "1efd1c3c27817d207e9f3477023b58f6d21c3d30b3a7e16a1418cfceaed6538b" }, "downloads": -1, "filename": "pytidylib-0.2.2.tar.gz", "has_sig": false, "md5_digest": "0d142f9a9ff81d75b55e339f8480b6c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 157935, "upload_time": "2014-07-15T15:24:28", "url": "https://files.pythonhosted.org/packages/9e/07/086a6ee84702e0440d5b87bf904da08dcec04802bec2c86697604a6d438c/pytidylib-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "99d2dcac57eb510d7afd9a9807741adc", "sha256": "e7d28eb3191b80ede405691820368630f2fa0d64885b389ae42f8f50ad6a11e5" }, "downloads": -1, "filename": "pytidylib-0.2.3.tar.gz", "has_sig": false, "md5_digest": "99d2dcac57eb510d7afd9a9807741adc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 86515, "upload_time": "2014-07-20T16:09:49", "url": "https://files.pythonhosted.org/packages/3f/7f/4ba8a3bbbd2a57e84b589c469a7f18fbb4215c4e4faead98afdc21c847ac/pytidylib-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "2a28267370c9409b592cdb786649cb25", "sha256": "0af07bd8ebd256af70ca925ada9337faf16d85b3072624f975136a5134150ab6" }, "downloads": -1, "filename": "pytidylib-0.2.4.tar.gz", "has_sig": false, "md5_digest": "2a28267370c9409b592cdb786649cb25", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 86650, "upload_time": "2014-12-20T04:22:43", "url": "https://files.pythonhosted.org/packages/b4/a0/b70cf2b7b4ee1f9d8fa0f1b4abbbac081a2638a580dabf29b8fb554d5fc1/pytidylib-0.2.4.tar.gz" } ], "0.3.0": [ { "comment_text": "built for Darwin-15.6.0", "digests": { "md5": "5ba09dc9b14022bf53ad228aec408cac", "sha256": "c59daa185870efd397a6bf8755b377cfae0c091534bcba1a646342310d515823" }, "downloads": -1, "filename": "pytidylib-0.3.0.macosx-10.11-x86_64.tar.gz", "has_sig": false, "md5_digest": "5ba09dc9b14022bf53ad228aec408cac", "packagetype": "bdist_dumb", "python_version": "any", "requires_python": null, "size": 9229, "upload_time": "2016-09-22T21:45:33", "url": "https://files.pythonhosted.org/packages/63/89/e3355c6d2f44c08f9b8528513a5ed526cded3c68db85d25328fa94e2cd6f/pytidylib-0.3.0.macosx-10.11-x86_64.tar.gz" }, { "comment_text": "", "digests": { "md5": "0cd91b65975c5adf4089c58050ca887a", "sha256": "dfb06dd32864c707483147f3ecc9cd9a331ec44731a6c69a0bed3ec2e743fc9e" }, "downloads": -1, "filename": "pytidylib-0.3.0.tar.gz", "has_sig": false, "md5_digest": "0cd91b65975c5adf4089c58050ca887a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 87467, "upload_time": "2016-09-22T21:46:48", "url": "https://files.pythonhosted.org/packages/11/87/9f9c1c01a1c424c4647e8b716351d7ec3009c432c34c72c7bedf60999ede/pytidylib-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "63dc32ae75da2d0847c0eee204ea07c4", "sha256": "e355e3b07875f80433982bda8ba3b5c8d87bc502221bb7943706cc17bc6ee457" }, "downloads": -1, "filename": "pytidylib-0.3.1.tar.gz", "has_sig": false, "md5_digest": "63dc32ae75da2d0847c0eee204ea07c4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 87558, "upload_time": "2016-09-29T02:27:26", "url": "https://files.pythonhosted.org/packages/5b/f7/108f9af32217b68e9183aa97e115f1ec3c6203d64753f07324aebd2596c0/pytidylib-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "06569f09914df642da09ba83dbec3112", "sha256": "22b1c8d75970d8064ff999c2369e98af1d0685417eda4c829a5c9f56764b0af3" }, "downloads": -1, "filename": "pytidylib-0.3.2.tar.gz", "has_sig": false, "md5_digest": "06569f09914df642da09ba83dbec3112", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 87669, "upload_time": "2016-11-16T01:53:00", "url": "https://files.pythonhosted.org/packages/2d/5e/4d2b5e2d443d56f444e2a3618eb6d044c97d14bf47cab0028872c0a468e0/pytidylib-0.3.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "06569f09914df642da09ba83dbec3112", "sha256": "22b1c8d75970d8064ff999c2369e98af1d0685417eda4c829a5c9f56764b0af3" }, "downloads": -1, "filename": "pytidylib-0.3.2.tar.gz", "has_sig": false, "md5_digest": "06569f09914df642da09ba83dbec3112", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 87669, "upload_time": "2016-11-16T01:53:00", "url": "https://files.pythonhosted.org/packages/2d/5e/4d2b5e2d443d56f444e2a3618eb6d044c97d14bf47cab0028872c0a468e0/pytidylib-0.3.2.tar.gz" } ] }