{ "info": { "author": "Sergei Maertens, Dan Foreman-Mackey", "author_email": "sergeimaertens@gmail.com, foreman.mackey@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5" ], "description": "aio-feedfinder2\n===============\n\nThis is an asynchronous Python library for finding links feeds on a website.\n\nIt is based on the synchronous (``requests`` based) ``feedfinder2``, written by\n`Dan Foreman-Mackey `_, which is based on\n`feedfinder `_ - originally\nwritten by `Mark Pilgrim `_\nand subsequently maintained by `Aaron Swartz `_\nuntil his untimely death.\n\nUsage\n-----\n\nFeedfinder2 offers a single public function: ``find_feeds``. You would use it\nas following::\n\n import asyncio\n from aio_feedfinder2 import find_feeds\n\n loop = asyncio.get_event_loop()\n task = asyncio.ensure_future(find_feeds(\"xkcd.com\"))\n feeds = loop.run_until_complete(future)\n\n\nNow, ``feeds`` is the list: ``['http://xkcd.com/atom.xml',\n'http://xkcd.com/rss.xml']``. There is some attempt made to rank feeds from\nbest candidate to worst but... well... you never know.\n\nThis ``asyncio`` variant is ideally suited to find feeds on multiple domains/\nsites in an asynchronous way::\n\n import asyncio\n from aio_feedfinder2 import find_feeds\n\n loop = asyncio.get_event_loop()\n tasks = [find_feeds(url) for url in [\"xkcd.com\", \"abstrusegoose.com\"]]\n feeds = loop.run_until_complete(asyncio.gather(*tasks))\n\n >>> feeds\n ... [\n ... ['http://xkcd.com/atom.xml', 'http://xkcd.com/rss.xml'],\n ... ['http://abstrusegoose.com/feed.xml', 'http://abstrusegoose.com/atomfeed.xml']\n ... ]\n\n\nLicense\n-------\n\nFeedfinder2 is licensed under the MIT license (see LICENSE).\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/sergei-maertens/feedfinder2", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "aio-feedfinder2", "package_url": "https://pypi.org/project/aio-feedfinder2/", "platform": "", "project_url": "https://pypi.org/project/aio-feedfinder2/", "project_urls": { "Homepage": "https://github.com/sergei-maertens/feedfinder2" }, "release_url": "https://pypi.org/project/aio-feedfinder2/0.3.0/", "requires_dist": null, "requires_python": "", "summary": "Find the feed URLs for a website.", "version": "0.3.0" }, "last_serial": 2987069, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "4e671f32d8acc01074121a16151d39e2", "sha256": "8fbe5aee126d5e3c24040d91a26ccddd5db9e9963997f058557b9fa44d8c7ef5" }, "downloads": -1, "filename": "aio-feedfinder2-0.1.0.tar.gz", "has_sig": false, "md5_digest": "4e671f32d8acc01074121a16151d39e2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3568, "upload_time": "2016-07-12T08:37:18", "url": "https://files.pythonhosted.org/packages/d6/a6/d09cc63f396d85d85dfb4f760db83f6766d2e54778b15713dece2ddff45d/aio-feedfinder2-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "d955dfd69ea517a025af89e38856af21", "sha256": "ef5ea64925dc1a9ccf73defa858229aa51f86601278e0f5d8bd968bcd0a5fab5" }, "downloads": -1, "filename": "aio-feedfinder2-0.1.1.tar.gz", "has_sig": false, "md5_digest": "d955dfd69ea517a025af89e38856af21", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3556, "upload_time": "2016-07-12T08:49:54", "url": "https://files.pythonhosted.org/packages/d9/f1/689ad08a4443bb2abdcbf130210d5c136ffdf34656f5398da6d703c210fc/aio-feedfinder2-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "c6726ed34a99dd4b240402b5d0052f07", "sha256": "09ce1cc04f826b523e9e6ec1c10b1631b5c81ac8946791d8376efa14ef87dd7d" }, "downloads": -1, "filename": "aio-feedfinder2-0.1.2.tar.gz", "has_sig": false, "md5_digest": "c6726ed34a99dd4b240402b5d0052f07", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3914, "upload_time": "2016-07-13T10:00:42", "url": "https://files.pythonhosted.org/packages/86/6c/74e90b003a14d3bad6f7e5613b0b822ae7fe5d2839c0205b91abaae78876/aio-feedfinder2-0.1.2.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "5af4fe9a890433b31642304f2e7ee3ec", "sha256": "00c187c16aed7a8f1ace7079c2b9b2a3722fc8757a0288e8e2951d24e780380c" }, "downloads": -1, "filename": "aio-feedfinder2-0.2.0.tar.gz", "has_sig": false, "md5_digest": "5af4fe9a890433b31642304f2e7ee3ec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4157, "upload_time": "2016-07-13T21:45:44", "url": "https://files.pythonhosted.org/packages/03/8c/72e7181b882359f2ff9b99dd2cfbea8d6efe084369d5e04b7e94cb2dca0e/aio-feedfinder2-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "a73d9ce9b1562877d87b689c85903ae5", "sha256": "5a02ad6aface25a346bfb9c3c8d75a60db1817c42887e5b2391140bcfd7bc29a" }, "downloads": -1, "filename": "aio-feedfinder2-0.2.1.tar.gz", "has_sig": false, "md5_digest": "a73d9ce9b1562877d87b689c85903ae5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4160, "upload_time": "2016-07-18T09:57:57", "url": "https://files.pythonhosted.org/packages/c8/fb/284c692e2845a23f553204e28a09763d67a51793811236e4c862f67bb4c7/aio-feedfinder2-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "a7980da0611d546aacda70f68e13c69c", "sha256": "a4b5ea2be016aa910d36d02807a15dcf991a0c596ef806641ebc4846e6d5e41c" }, "downloads": -1, "filename": "aio-feedfinder2-0.2.2.tar.gz", "has_sig": false, "md5_digest": "a7980da0611d546aacda70f68e13c69c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4381, "upload_time": "2016-07-19T14:18:42", "url": "https://files.pythonhosted.org/packages/ed/be/bb5f9f3b3d565d7758d50225f030ef808f81a0529275f86454df1438f096/aio-feedfinder2-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "2ac3d008b0a5216cca412824c8a8be62", "sha256": "afe58b17a964bf575fcf6c9e4b4a779b4601f3397e1f070c7307c3912002a00e" }, "downloads": -1, "filename": "aio_feedfinder2-0.2.3-py3-none-any.whl", "has_sig": false, "md5_digest": "2ac3d008b0a5216cca412824c8a8be62", "packagetype": "bdist_wheel", "python_version": "3.4", "requires_python": null, "size": 6290, "upload_time": "2017-06-09T12:11:54", "url": "https://files.pythonhosted.org/packages/5f/61/4e86c3348fb26bf97a12a4396f2491f5cb0ac6417eb449ce2f096b16d9e5/aio_feedfinder2-0.2.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fd6e9362d13fcb54e20464c9bb8e29aa", "sha256": "1dc187e08603b135a48258a5374932593a3a0679020185d83399046bef60e58f" }, "downloads": -1, "filename": "aio-feedfinder2-0.2.3.tar.gz", "has_sig": false, "md5_digest": "fd6e9362d13fcb54e20464c9bb8e29aa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4334, "upload_time": "2017-06-09T12:11:52", "url": "https://files.pythonhosted.org/packages/e0/39/d96d1afc309056e8d3922717a132b07c09e6983c3d5efa4f972e7979081b/aio-feedfinder2-0.2.3.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "ce1a705849a5d074635efab97cbbd820", "sha256": "9f226f9c918ad229cc8a0623dd95258b7b02ce8b70d602e761aa51ac12d9bc4c" }, "downloads": -1, "filename": "aio_feedfinder2-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "ce1a705849a5d074635efab97cbbd820", "packagetype": "bdist_wheel", "python_version": "3.4", "requires_python": null, "size": 6293, "upload_time": "2017-06-29T10:03:42", "url": "https://files.pythonhosted.org/packages/d5/d4/16a25bb277a9c189f20118c970c13d21b1fa9209cb4d9290738cc4fd1565/aio_feedfinder2-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d85ab3627270f942d83485ffbce5b077", "sha256": "03786ffaa4b570ac489d5a101ec54978d29c4e78c2dd42253b5c2e37d1bb3323" }, "downloads": -1, "filename": "aio-feedfinder2-0.3.0.tar.gz", "has_sig": false, "md5_digest": "d85ab3627270f942d83485ffbce5b077", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1966, "upload_time": "2017-06-29T10:03:40", "url": "https://files.pythonhosted.org/packages/8c/ea/b23da2ab01c612414164058d6a537efa9cf6b020d4786e2deab5192125df/aio-feedfinder2-0.3.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ce1a705849a5d074635efab97cbbd820", "sha256": "9f226f9c918ad229cc8a0623dd95258b7b02ce8b70d602e761aa51ac12d9bc4c" }, "downloads": -1, "filename": "aio_feedfinder2-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "ce1a705849a5d074635efab97cbbd820", "packagetype": "bdist_wheel", "python_version": "3.4", "requires_python": null, "size": 6293, "upload_time": "2017-06-29T10:03:42", "url": "https://files.pythonhosted.org/packages/d5/d4/16a25bb277a9c189f20118c970c13d21b1fa9209cb4d9290738cc4fd1565/aio_feedfinder2-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d85ab3627270f942d83485ffbce5b077", "sha256": "03786ffaa4b570ac489d5a101ec54978d29c4e78c2dd42253b5c2e37d1bb3323" }, "downloads": -1, "filename": "aio-feedfinder2-0.3.0.tar.gz", "has_sig": false, "md5_digest": "d85ab3627270f942d83485ffbce5b077", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1966, "upload_time": "2017-06-29T10:03:40", "url": "https://files.pythonhosted.org/packages/8c/ea/b23da2ab01c612414164058d6a537efa9cf6b020d4786e2deab5192125df/aio-feedfinder2-0.3.0.tar.gz" } ] }