{ "info": { "author": "Alexander Schepanovski", "author_email": "suor.web@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Text Processing :: Markup :: HTML" ], "description": "ParseChain \n==========\n\nA way to parse html fluently and as declarative as possible. This is in **alpha stage** now, things will change.\n\n\nInstallation\n-------------\n\n::\n\n pip install parsechain\n\n\nUsage\n-----\n\n.. code:: python\n\n import requests\n from parsechain import C, Response\n\n # Fetch html and cast it\n response = Response.cast(requests.get(...))\n\n # Get a movie title and rating\n title = response.css('h1 .title').text\n rating = response.css('.left-box').inner_text.re(r'IMDb: ([\\d.]+)').float\n\n # Or both\n movie = response.root.multi({\n 'title': C.css('h1 .title').text,\n 'rating': C.css('.left-box').inner_text.re(r'IMDb: ([\\d.]+)').float,\n })\n\n\nThe last example could be extended to show chains reuse:\n\n\n.. code:: python\n\n def by_label(label):\n return C.css('.left-box').inner_text.re(fr'{label}: ([\\w.]+)')\n\n parse_movie = C.multi({\n 'title': C.css('h1 .title').text,\n 'rating': by_label('IMDb').float,\n 'status': by_label('Status').trim,\n })\n\n movie = parse_movie(response.root) # Pass a root of a tree\n\n\nThe complete list of available ops could be seen in ``parsechain.chains.Ops`` class. Proper documentation to follow, some day ;)\n\n\n.. |Build Status| image:: https://travis-ci.org/Suor/parsechain.svg?branch=master\n :target: https://travis-ci.org/Suor/parsechain\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/Suor/parsechain", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "parsechain", "package_url": "https://pypi.org/project/parsechain/", "platform": "", "project_url": "https://pypi.org/project/parsechain/", "project_urls": { "Homepage": "http://github.com/Suor/parsechain" }, "release_url": "https://pypi.org/project/parsechain/0.0.3/", "requires_dist": null, "requires_python": "", "summary": "Making parsing concise", "version": "0.0.3" }, "last_serial": 5255566, "releases": { "0.0.2": [ { "comment_text": "", "digests": { "md5": "4692d476c87f52f6d6483b97e257c78a", "sha256": "09341ecfaf58173d87f8491e9a9124455c74e456de9f19ab70b64454c8dac05a" }, "downloads": -1, "filename": "parsechain-0.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4692d476c87f52f6d6483b97e257c78a", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 7693, "upload_time": "2019-02-08T09:45:41", "url": "https://files.pythonhosted.org/packages/bc/c0/a2a0c484cde5cb342f932b6e12e4575192cc48275c317202a9a6033dbcdc/parsechain-0.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e28b806b975257cf70c5e1c85561a0e7", "sha256": "d6e11ea603e7f11223478195be0da68da8b882fe1344df394467399e16b8350c" }, "downloads": -1, "filename": "parsechain-0.0.2.tar.gz", "has_sig": false, "md5_digest": "e28b806b975257cf70c5e1c85561a0e7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6962, "upload_time": "2019-02-08T09:45:38", "url": "https://files.pythonhosted.org/packages/7a/90/815896f180da27a2515ab7a126e9409075b046e1e17af5e763a1c65020d0/parsechain-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "057267663dfdeecd98263add64a4e6c0", "sha256": "54c0210d7be46b1cce64973b64784cbb63287efce755b8ee9095f93ff07f1274" }, "downloads": -1, "filename": "parsechain-0.0.3.tar.gz", "has_sig": false, "md5_digest": "057267663dfdeecd98263add64a4e6c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7987, "upload_time": "2019-05-11T09:08:33", "url": "https://files.pythonhosted.org/packages/69/4f/09ccf5e5bfa64a55b83fd99babb4bb1a4cce90a3cc321b13aa337fd1fa46/parsechain-0.0.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "057267663dfdeecd98263add64a4e6c0", "sha256": "54c0210d7be46b1cce64973b64784cbb63287efce755b8ee9095f93ff07f1274" }, "downloads": -1, "filename": "parsechain-0.0.3.tar.gz", "has_sig": false, "md5_digest": "057267663dfdeecd98263add64a4e6c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7987, "upload_time": "2019-05-11T09:08:33", "url": "https://files.pythonhosted.org/packages/69/4f/09ccf5e5bfa64a55b83fd99babb4bb1a4cce90a3cc321b13aa337fd1fa46/parsechain-0.0.3.tar.gz" } ] }