{ "info": { "author": "Robin Nabel", "author_email": "rnabel@ucdavis.edu", "bugtrack_url": null, "classifiers": [], "description": "PyDrive\n-------\n\n*PyDrive* is a wrapper library of\n`google-api-python-client `_\nthat simplifies many common Google Drive API tasks.\n\nProject Info\n------------\n\n- Homepage: `https://pypi.python.org/pypi/PyDrive `_\n- Documentation: `Official documentation on GitHub pages `_\n- Github: `https://github.com/googledrive/PyDrive `_\n\nFeatures of PyDrive\n-------------------\n\n- Simplifies OAuth2.0 into just few lines with flexible settings.\n- Wraps `Google Drive API `_ into\n classes of each resource to make your program more object-oriented.\n- Helps common operations else than API calls, such as content fetching\n and pagination control.\n\nHow to install\n--------------\n\nYou can install PyDrive with regular ``pip`` command.\n\n::\n\n $ pip install PyDrive\n\nTo install the current development version from GitHub, use:\n\n::\n\n $ pip install git+https://github.com/googledrive/PyDrive.git#egg=PyDrive\n\nOAuth made easy\n---------------\n\nDownload *client\\_secrets.json* from Google API Console and OAuth2.0 is\ndone in two lines. You can customize behavior of OAuth2 in one settings\nfile *settings.yaml*.\n\n.. code:: python\n\n\n from pydrive.auth import GoogleAuth\n from pydrive.drive import GoogleDrive\n\n gauth = GoogleAuth()\n gauth.LocalWebserverAuth()\n\n drive = GoogleDrive(gauth)\n\nFile management made easy\n-------------------------\n\nUpload/update the file with one method. PyDrive will do it in the most\nefficient way.\n\n.. code:: python\n\n file1 = drive.CreateFile({'title': 'Hello.txt'})\n file1.SetContentString('Hello')\n file1.Upload() # Files.insert()\n\n file1['title'] = 'HelloWorld.txt' # Change title of the file\n file1.Upload() # Files.patch()\n\n content = file1.GetContentString() # 'Hello'\n file1.SetContentString(content+' World!') # 'Hello World!'\n file1.Upload() # Files.update()\n\n file2 = drive.CreateFile()\n file2.SetContentFile('hello.png')\n file2.Upload()\n print('Created file %s with mimeType %s' % (file2['title'],\n file2['mimeType']))\n # Created file hello.png with mimeType image/png\n\n file3 = drive.CreateFile({'id': file2['id']})\n print('Downloading file %s from Google Drive' % file3['title']) # 'hello.png'\n file3.GetContentFile('world.png') # Save Drive file as a local file\n\n # or download Google Docs files in an export format provided.\n # downloading a docs document as an html file:\n docsfile.GetContentFile('test.html', mimetype='text/html')\n\nFile listing pagination made easy\n---------------------------------\n\n*PyDrive* handles file listing pagination for you.\n\n.. code:: python\n\n # Auto-iterate through all files that matches this query\n file_list = drive.ListFile({'q': \"'root' in parents\"}).GetList()\n for file1 in file_list:\n print('title: %s, id: %s' % (file1['title'], file1['id']))\n\n # Paginate file lists by specifying number of max results\n for file_list in drive.ListFile({'maxResults': 10}):\n print 'Received %s files from Files.list()' % len(file_list) # <= 10\n for file1 in file_list:\n print('title: %s, id: %s' % (file1['title'], file1['id']))\n\nConcurrent access made easy\n---------------------------\n\nAll calls made are thread-safe. The underlying implementation in the\ngoogle-api-client library\n`is not thread-safe `_,\nwhich means that every request has to re-authenticate an http object. You\ncan avoid this overhead by\ncreating your own http object for each thread and re-use it for every call.\n\nThis can be done as follows:\n\n.. code:: python\n\n # Create httplib.Http() object.\n http = drive.auth.Get_Http_Object()\n\n # Create file object to upload.\n file_obj = drive.CreateFile()\n file_obj['title'] = \"file name\"\n\n # Upload the file and pass the http object into the call to Upload.\n file_obj.Upload(param={\"http\": http})\n\nYou can specify the http-object in every access method which takes a *param*\nparameter.", "description_content_type": null, "docs_url": "https://pythonhosted.org/PyDrive/", "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/googledrive/PyDrive", "keywords": null, "license": "LICENSE", "maintainer": null, "maintainer_email": null, "name": "PyDrive", "package_url": "https://pypi.org/project/PyDrive/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/PyDrive/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/googledrive/PyDrive" }, "release_url": "https://pypi.org/project/PyDrive/1.3.1/", "requires_dist": null, "requires_python": null, "summary": "Google Drive API made easy.", "version": "1.3.1" }, "last_serial": 2420664, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "b159ca19cfe9224d620c7ef619d2d437", "sha256": "a593a4227f4b37644db6d34c08a504a8fdda737f7854a7e24b739d5cb92172c0" }, "downloads": -1, "filename": "PyDrive-1.0.0.tar.gz", "has_sig": false, "md5_digest": "b159ca19cfe9224d620c7ef619d2d437", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 155146, "upload_time": "2013-08-16T17:35:25", "url": "https://files.pythonhosted.org/packages/61/e1/b5242f7219d6db1f52025e686b9f4d625d584ab012e42e2a38fbb58c515f/PyDrive-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "87a8989e852c152161c14bbaac2b6c76", "sha256": "5b644a896ee3c53f4d37907c09e514dcf0bfa1ddb2214d408531b57c5232ac81" }, "downloads": -1, "filename": "PyDrive-1.0.1.tar.gz", "has_sig": false, "md5_digest": "87a8989e852c152161c14bbaac2b6c76", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 156702, "upload_time": "2014-04-04T01:29:53", "url": "https://files.pythonhosted.org/packages/bf/1b/d3980ef79ea9c184c7944bc82e6f698db962907d2187c8fa376f9f4617d9/PyDrive-1.0.1.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "f890acf9b697a9a8e6dc048858d5d23a", "sha256": "b4f1bb1b2f85510f83a0dc3996b92e8bc9626326b9f078d58a26790dca2b0ad3" }, "downloads": -1, "filename": "PyDrive-1.2.1-py2.7.egg", "has_sig": false, "md5_digest": "f890acf9b697a9a8e6dc048858d5d23a", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 54346, "upload_time": "2016-08-10T02:54:07", "url": "https://files.pythonhosted.org/packages/fe/62/f159ce331714c62faa0f11b659598883fd31d8390f156a6eff6911bf5741/PyDrive-1.2.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "2213ab65108c4e84e72a1d56fd1119a2", "sha256": "49af56998e3cc02486ca1ff36265cf8146356a9b2581056ce8c674636dcdbd12" }, "downloads": -1, "filename": "PyDrive-1.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2213ab65108c4e84e72a1d56fd1119a2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 23639, "upload_time": "2016-08-10T02:54:05", "url": "https://files.pythonhosted.org/packages/d3/31/76c751b90192afe443f0cf5f058af170b3bcb5f245bf1255dbac3c715a23/PyDrive-1.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ea5e53d78fbfdc62e42208df325519df", "sha256": "0606628aa88e50f427070f184b1f8007a36ce316e11648dda70bd213870205aa" }, "downloads": -1, "filename": "PyDrive-1.2.1.tar.gz", "has_sig": false, "md5_digest": "ea5e53d78fbfdc62e42208df325519df", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1545701, "upload_time": "2016-08-10T02:54:10", "url": "https://files.pythonhosted.org/packages/13/f5/eda572b01aa89d383dd84020437cfcf8502a96e58aee05698e24ce80e1a7/PyDrive-1.2.1.tar.gz" }, { "comment_text": "", "digests": { "md5": "3dd06369c7e5961d8989c6f109ac0380", "sha256": "ea1786e1329d9f1c7cd3fc8683d6c03290b4015884da41785f19df4c0388d6fd" }, "downloads": -1, "filename": "PyDrive-1.2.1.zip", "has_sig": false, "md5_digest": "3dd06369c7e5961d8989c6f109ac0380", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1584489, "upload_time": "2016-08-10T02:54:13", "url": "https://files.pythonhosted.org/packages/33/c4/b89f208bd33f79b13782bc4cc462d488b43646d6b328b7d2171710f83c2a/PyDrive-1.2.1.zip" } ], "1.3.1": [ { "comment_text": "", "digests": { "md5": "b85a3e7e5963320a43778f35d68e9972", "sha256": "5b94e971430722eb5c40a090f21df46b32e51399d747c1511796f63f902d1095" }, "downloads": -1, "filename": "PyDrive-1.3.1-py2-none-any.whl", "has_sig": false, "md5_digest": "b85a3e7e5963320a43778f35d68e9972", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 25683, "upload_time": "2016-10-24T20:48:39", "url": "https://files.pythonhosted.org/packages/6b/2d/c8e052ba51099faee0bfe71d84f35bb1576e6910483cad46b840a122ca6c/PyDrive-1.3.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "99c51a87c22edaed718b1bc8d00058e9", "sha256": "83890dcc2278081c6e3f6a8da1f8083e25de0bcc8eb7c91374908c5549a20787" }, "downloads": -1, "filename": "PyDrive-1.3.1.tar.gz", "has_sig": false, "md5_digest": "99c51a87c22edaed718b1bc8d00058e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 987445, "upload_time": "2016-10-24T20:48:23", "url": "https://files.pythonhosted.org/packages/52/e0/0e64788e5dd58ce2d6934549676243dc69d982f198524be9b99e9c2a4fd5/PyDrive-1.3.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b85a3e7e5963320a43778f35d68e9972", "sha256": "5b94e971430722eb5c40a090f21df46b32e51399d747c1511796f63f902d1095" }, "downloads": -1, "filename": "PyDrive-1.3.1-py2-none-any.whl", "has_sig": false, "md5_digest": "b85a3e7e5963320a43778f35d68e9972", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 25683, "upload_time": "2016-10-24T20:48:39", "url": "https://files.pythonhosted.org/packages/6b/2d/c8e052ba51099faee0bfe71d84f35bb1576e6910483cad46b840a122ca6c/PyDrive-1.3.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "99c51a87c22edaed718b1bc8d00058e9", "sha256": "83890dcc2278081c6e3f6a8da1f8083e25de0bcc8eb7c91374908c5549a20787" }, "downloads": -1, "filename": "PyDrive-1.3.1.tar.gz", "has_sig": false, "md5_digest": "99c51a87c22edaed718b1bc8d00058e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 987445, "upload_time": "2016-10-24T20:48:23", "url": "https://files.pythonhosted.org/packages/52/e0/0e64788e5dd58ce2d6934549676243dc69d982f198524be9b99e9c2a4fd5/PyDrive-1.3.1.tar.gz" } ] }