{ "info": { "author": "Steinn Eldjarn Sigurdarson", "author_email": "steinnes@gmail.com", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.7", "Topic :: Internet :: WWW/HTTP" ], "description": "# gaggle\n\nAn aiohttp-based Google API client.\n\nThe google-api-python-client requirement is because this library uses it to\ndiscover services and prepare requests, leveraging the prepare+execute pattern\nimplemented in googleapiclient.HttpRequest.\n\n## Usage\n\n### JSON\n\n```python\n\nimport asyncio\nimport aiohttp\nfrom gaggle import Client\n\n\nasync def main():\n async with aiohttp.ClientSession() as session:\n drive = Client(\n session=session,\n token=access_token,\n # the following are optional and only required if the access_token is expired and can be refreshed\n refresh_token=refresh_token,\n client_id=client_id,\n client_secret=client_secret\n ).drive('v3')\n resp = await drive.files.list(q=\"parents in 'root'\")\n # resp is an instance of aiohttp.ClientResponse\n if resp.status == 200:\n data = await resp.json()\n files = data.get('files', [])\n for obj in files:\n print(obj)\n\nif __name__ == \"__main__\":\n loop = asyncio.get_event_loop()\n loop.run_until_complete(main())\n\n```\n\nResults in something like:\n```\n{'kind': 'drive#file', 'id': '...', 'name': 'test.csv', 'mimeType': 'text/csv'}\n{'kind': 'drive#file', 'id': '...', 'name': 'Test Folder', 'mimeType': 'application/vnd.google-apps.folder'}\n{'kind': 'drive#file', 'id': '...', 'name': 'spreadsheet.xlsx', 'mimeType': 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'}\n{'kind': 'drive#file', 'id': '...', 'name': 'spreadsheet', 'mimeType': 'application/vnd.google-apps.spreadsheet'}\n```\n\n\n## Installation\n\n```\n$ pip install gaggle\n```\n\n## Testing and developing\n\nI've included a handy Makefile to make these things fairly easy.\n\n```\n$ make setup\n$ make test\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/steinnes/gaggle", "keywords": "google api,async", "license": "BSD-3-Clause", "maintainer": "Steinn Eldjarn Sigurdarson", "maintainer_email": "steinnes@gmail.com", "name": "gaggle", "package_url": "https://pypi.org/project/gaggle/", "platform": "", "project_url": "https://pypi.org/project/gaggle/", "project_urls": { "Homepage": "https://github.com/steinnes/gaggle" }, "release_url": "https://pypi.org/project/gaggle/0.2.1/", "requires_dist": [ "aiohttp (>=3.5.3,<4.0.0)", "google-api-python-client (>=1.7.7,<2.0.0)", "google-auth (>=1.6.2,<2.0.0)", "alog (>=0.9.13,<0.10.0)" ], "requires_python": ">=3.7,<4.0", "summary": "aiohttp wrapper for google-api-client-python", "version": "0.2.1" }, "last_serial": 5457484, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "56561cd383a3c7ee82189a3eaa67000b", "sha256": "3cebcc140063983b75efd13add7a4d047c8a5c9d0ce1d271f26a20c7a73e638a" }, "downloads": -1, "filename": "gaggle-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "56561cd383a3c7ee82189a3eaa67000b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5,<4.0", "size": 7231, "upload_time": "2019-01-16T00:10:56", "url": "https://files.pythonhosted.org/packages/66/cd/f7a9e3115ae6a9d8ca4d240eea0e90b3a5f03e21280ae75ab69ed981460b/gaggle-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8f330e0ae1df023bade70bb4213b2102", "sha256": "3cdf57accafa9e9dcb8c11f482d769a8299185b5a980b45436d04a3451eb1560" }, "downloads": -1, "filename": "gaggle-0.1.0.tar.gz", "has_sig": false, "md5_digest": "8f330e0ae1df023bade70bb4213b2102", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5,<4.0", "size": 3799, "upload_time": "2019-01-16T00:10:58", "url": "https://files.pythonhosted.org/packages/e4/49/ec93b40715a70b83725946184f2df494a5acc0d7c39b3a9ead47e8795b32/gaggle-0.1.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "e3b02eea51142e1aa74fca66981be64c", "sha256": "8133faecb97267f0cabcd24f8a648ec51bc5ba94386781b35df759af0b02d5aa" }, "downloads": -1, "filename": "gaggle-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "e3b02eea51142e1aa74fca66981be64c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7,<4.0", "size": 7602, "upload_time": "2019-01-24T09:59:20", "url": "https://files.pythonhosted.org/packages/f5/e7/8ba2360c548814151f05a65554767d7a18c3d83b1668184c6a38277a3589/gaggle-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d75046db5e068def9d460edc9255d5bf", "sha256": "8deec8639634fbc7e774b64a601f82bc93a66130cbdb829d5b2897a4ffaf7db0" }, "downloads": -1, "filename": "gaggle-0.2.1.tar.gz", "has_sig": false, "md5_digest": "d75046db5e068def9d460edc9255d5bf", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7,<4.0", "size": 3967, "upload_time": "2019-01-24T09:59:21", "url": "https://files.pythonhosted.org/packages/b8/90/6c5dd3c3673e062744e55a4ce46704b2d8feb649aae401afb0106627c4da/gaggle-0.2.1.tar.gz" } ], "0.2.2rc0": [ { "comment_text": "", "digests": { "md5": "a6c401412e157505408247b89cd836a3", "sha256": "51a12c3e63c3b652e98440f2dcf9d3b061065f4fa28416afabb6c852bb32174d" }, "downloads": -1, "filename": "gaggle-0.2.2rc0-py3-none-any.whl", "has_sig": false, "md5_digest": "a6c401412e157505408247b89cd836a3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7,<4.0", "size": 3861, "upload_time": "2019-06-27T15:31:04", "url": "https://files.pythonhosted.org/packages/60/7d/a6775a9701b4d73fcaf82ff3e9352ceab7fbd61ee4787a119374e726fc0f/gaggle-0.2.2rc0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "db398e653cd425413bc0b34d87101a76", "sha256": "4b00a86e6a13742aa32532d309c8c963f701d65351f39b3762f5d7e8e5055049" }, "downloads": -1, "filename": "gaggle-0.2.2rc0.tar.gz", "has_sig": false, "md5_digest": "db398e653cd425413bc0b34d87101a76", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7,<4.0", "size": 4021, "upload_time": "2019-06-27T15:31:06", "url": "https://files.pythonhosted.org/packages/11/b4/8b48ced9382c5cf72f53919c6c8e1a0b154bc17fb6dd13a505444aae665b/gaggle-0.2.2rc0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e3b02eea51142e1aa74fca66981be64c", "sha256": "8133faecb97267f0cabcd24f8a648ec51bc5ba94386781b35df759af0b02d5aa" }, "downloads": -1, "filename": "gaggle-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "e3b02eea51142e1aa74fca66981be64c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7,<4.0", "size": 7602, "upload_time": "2019-01-24T09:59:20", "url": "https://files.pythonhosted.org/packages/f5/e7/8ba2360c548814151f05a65554767d7a18c3d83b1668184c6a38277a3589/gaggle-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d75046db5e068def9d460edc9255d5bf", "sha256": "8deec8639634fbc7e774b64a601f82bc93a66130cbdb829d5b2897a4ffaf7db0" }, "downloads": -1, "filename": "gaggle-0.2.1.tar.gz", "has_sig": false, "md5_digest": "d75046db5e068def9d460edc9255d5bf", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7,<4.0", "size": 3967, "upload_time": "2019-01-24T09:59:21", "url": "https://files.pythonhosted.org/packages/b8/90/6c5dd3c3673e062744e55a4ce46704b2d8feb649aae401afb0106627c4da/gaggle-0.2.1.tar.gz" } ] }