{ "info": { "author": "\"Stuart Mumford\"", "author_email": "\"stuart@cadair.com\"", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "ParFive\n=======\n\n.. image:: https://img.shields.io/pypi/v/parfive.svg\n :target: https://pypi.python.org/pypi/parfive\n :alt: Latest PyPI version\n\nA parallel file downloader using asyncio.\n\nUsage\n-----\n\nparfive works by creating a downloader object, appending files to it and then\nrunning the download. parfive has a synchronous API, but uses asyncio to\nparalellise downloading the files.\n\nA simple example is::\n\n from parfive import Downloader\n\n dl = Downloader()\n\n dl.enqueue_file(\"http://data.sunpy.org/sample-data/predicted-sunspot-radio-flux.txt\", path=\"./\")\n\n files = dl.download()\n\n\nResults\n^^^^^^^\n\n``parfive.Downloader.download`` returns a ``parfive.Results`` object, which is a\nlist of the filenames that have been downloaded. It also tracks any files which\nfailed to download.\n\n\nHandling Errors\n^^^^^^^^^^^^^^^\n\nIf files fail to download, the urls and the response from the server are stored\nin the ``Results`` object returned by ``parfive.Downloader``. These can be used to\ninform users about the errors. (Note, the progress bar will finish in an\nincomplete state if a download fails, i.e. it will show ``4/5 Files Downloaded``).\n\nThe ``Results`` object is a list with an extra attribute ``errors``, this property\nreturns a list of named tuples, where these named tuples contains the ``.url``\nand the ``.response``, which is a ``aiohttp.ClientResponse`` or a\n``aiohttp.ClientError`` object.\n\nInstallation\n------------\n\nparfive is available on PyPI, you can install it with pip::\n\n pip install parfive\n\nor if you want to use FTP downloads::\n\n pip install parfive[ftp]\n\nRequirements\n^^^^^^^^^^^^\n\n- Python 3.5+\n- aiohttp\n- tqdm\n- aioftp (for downloads over FTP)\n\nLicence\n-------\n\nMIT Licensed\n\nAuthors\n-------\n\n`parfive` was written by `Stuart Mumford `_.", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://parfive.readthedocs.io/", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "parfive", "package_url": "https://pypi.org/project/parfive/", "platform": "", "project_url": "https://pypi.org/project/parfive/", "project_urls": { "Homepage": "https://parfive.readthedocs.io/" }, "release_url": "https://pypi.org/project/parfive/1.0.0/", "requires_dist": null, "requires_python": "", "summary": "A HTTP and FTP parallel file downloader.", "version": "1.0.0" }, "last_serial": 5212298, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "dc10dfa1be90378a8bdd4947bcbe16d9", "sha256": "56d20dda9cab7029b506f10b862f3f23682e86e734f141ae03692318d07a2d4e" }, "downloads": -1, "filename": "parfive-0.1.0.tar.gz", "has_sig": false, "md5_digest": "dc10dfa1be90378a8bdd4947bcbe16d9", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 5475, "upload_time": "2018-06-18T11:35:28", "url": "https://files.pythonhosted.org/packages/5d/bb/d5f7e84b6ebcbaf870a510ed56d60809d6f6346df6875ed26fc0d9b5626c/parfive-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "226d3d08cbfaae727164e1b6aa73ff39", "sha256": "fb1559682340910d491cc60227e6238730a474917bfdb192ac48340757073298" }, "downloads": -1, "filename": "parfive-0.1.1.tar.gz", "has_sig": false, "md5_digest": "226d3d08cbfaae727164e1b6aa73ff39", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 5513, "upload_time": "2018-06-18T11:40:59", "url": "https://files.pythonhosted.org/packages/7a/72/b60c469f47401fb7d125808ef4d9b29acca3bb6207e0c391e1e28941c3b6/parfive-0.1.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "beebbb8fdbe1432550d0bab338f78b8e", "sha256": "0ec7a208f9574bcd855d9ca02dbc0cb4ccf67d49b7fb6b44b908bcf11e2cf893" }, "downloads": -1, "filename": "parfive-0.2.tar.gz", "has_sig": false, "md5_digest": "beebbb8fdbe1432550d0bab338f78b8e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13802, "upload_time": "2019-03-12T21:27:33", "url": "https://files.pythonhosted.org/packages/7f/cf/e76c146649bd7512d3def577c76ec04227c0d9c16b1c82cc962f171a2946/parfive-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "2789f30a5b9aa92d34bf78656f2e19af", "sha256": "4b0c8ad3c6583e9f8bbd27454a498d2c9d6762870d63377ff09978f07fa784be" }, "downloads": -1, "filename": "parfive-0.2.1.tar.gz", "has_sig": false, "md5_digest": "2789f30a5b9aa92d34bf78656f2e19af", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13889, "upload_time": "2019-03-15T18:11:17", "url": "https://files.pythonhosted.org/packages/12/5e/90d72f6a0e1eef532326781e34ede3b5de046302d1a134f162f3796e4c85/parfive-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "f7b2c3cb4f681d0032d3d235e85f1fc9", "sha256": "8f3bbdb8b1a4fcbe165561a550f09128d01dc0b45bdf98ad877f68486a269a56" }, "downloads": -1, "filename": "parfive-0.2.2.tar.gz", "has_sig": false, "md5_digest": "f7b2c3cb4f681d0032d3d235e85f1fc9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13940, "upload_time": "2019-03-20T12:53:17", "url": "https://files.pythonhosted.org/packages/0e/88/0cd0b07477ae6b708f15178cc00a7e6ce21bf09198fc86313c68ae070d74/parfive-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "3854256a727a636dd2dc4b37442ca3f3", "sha256": "5936cd5897c5b26b2e6990f10f01af8fec891e61d26b4d28fcca2db7e4cedc5c" }, "downloads": -1, "filename": "parfive-0.2.3.tar.gz", "has_sig": false, "md5_digest": "3854256a727a636dd2dc4b37442ca3f3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13953, "upload_time": "2019-03-21T14:37:41", "url": "https://files.pythonhosted.org/packages/1d/13/092a4a45ff64c2cedf8f70a738b52163740dee3e23d17b132b09d447cf6f/parfive-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "b4f783c152eec4ec03d646879fc14ac0", "sha256": "413f39fb662aec7dacf8331008bb4ae254bbf148d670d3d08650796f71ff9447" }, "downloads": -1, "filename": "parfive-0.2.4.tar.gz", "has_sig": false, "md5_digest": "b4f783c152eec4ec03d646879fc14ac0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14216, "upload_time": "2019-04-01T11:57:10", "url": "https://files.pythonhosted.org/packages/f0/bb/b060a2448e95c6a8049c4cb07255d0e2d48c61882032177905fbd0c44165/parfive-0.2.4.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "093d52b99263398e902c70a1f128f3ca", "sha256": "15dc8466922c8fb1f814d3f7c3f3656191ac17b38fd7cc3350b9bf726e144ebb" }, "downloads": -1, "filename": "parfive-1.0.0.tar.gz", "has_sig": false, "md5_digest": "093d52b99263398e902c70a1f128f3ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14462, "upload_time": "2019-05-01T11:12:21", "url": "https://files.pythonhosted.org/packages/2b/f0/3ef26de68dd05e64baa9ef26057cd35d0d12d4deb8af088f0c85831ca30f/parfive-1.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "093d52b99263398e902c70a1f128f3ca", "sha256": "15dc8466922c8fb1f814d3f7c3f3656191ac17b38fd7cc3350b9bf726e144ebb" }, "downloads": -1, "filename": "parfive-1.0.0.tar.gz", "has_sig": false, "md5_digest": "093d52b99263398e902c70a1f128f3ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14462, "upload_time": "2019-05-01T11:12:21", "url": "https://files.pythonhosted.org/packages/2b/f0/3ef26de68dd05e64baa9ef26057cd35d0d12d4deb8af088f0c85831ca30f/parfive-1.0.0.tar.gz" } ] }