当前位置: 首页 > 知识库问答 >
问题:

pyDrive正在提供FileNotDownloadableError错误

费学
2023-03-14

我正在尝试从google drive下载一个带有PyDrive的文件。我听从指示http://pythonhosted.org/PyDrive/filemanagement.html#download-文件内容。它在我自己的领域正常工作。

日志如下。

$ python driveDownload.py

Your browser has been opened to visit:
https://accounts.google.com/o/oauth2/auth?scope=https%3A%2F2Fwww.googleapis.com%2Fauth%2Fdrive&redirect_uri=http%3A%2F%2Flocalhost%3A8080%2F&response_type=code&client_id=837780293427-8m0mkibmrn8gg44i77pjg54ga70kpgae.apps.googleusercontent.com&access_type=offline 

Authentication successful.
title: a.xlsx, id: 0BzV-wECmF8MQTkdyQ0FHaVdwYlU
file Title identiefied :a.xlsx
aFromDrive.xlsx downloaded

我正在尝试从我的客户的域相同的事情,它给出以下错误

$ python driveDownload.py

    https://accounts.google.com/o/oauth2/auth?scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdrive&redirect_uri=http%3A%2F%2Flocalhost%3A8080%2F&response_type=code&client_id=971731530622-7tdt9qhakv6q7i4edpfnqb5h7826eslv.apps.googleusercontent.com&access_type=offline                                                                                                                              

Authentication successful.
title: a.xlsx, id: 1l073W5s4dE0-dhFUXAMB-XROvOUC2z51NbfY69-bvIo
 file Title identiefied :a.xlsx                                
Traceback (most recent call last):                             
  File "driveDownload.py", line 29, in <module>                
    myFile.GetContentFile(myLocalPath)                         
  File "build/bdist.linux-x86_64/egg/pydrive/files.py", line 167, in GetContentFile
  File "build/bdist.linux-x86_64/egg/pydrive/files.py", line 36, in _decorated     
  File "build/bdist.linux-x86_64/egg/pydrive/files.py", line 210, in FetchContent  
pydrive.files.FileNotDownloadableError: No downloadLink/exportLinks for mimetype found in metadata

我的代码下载。py在下面

from pydrive.auth import GoogleAuth
import os
#authentication via the browser
#note... client_secrets.json is required for this that leads
#to the user authentication
gauth = GoogleAuth()
# gauth.LocalWebserverAuth()
from pydrive.drive import GoogleDrive

#accessing the drive
drive = GoogleDrive(gauth)


# Auto-iterate through all files that matches this query
file_list = drive.ListFile({'q': "'root' in parents and trashed=false"}).GetList()
fileName2Download= 'a.xlsx'
myLocalPath = 'aFromDrive.xlsx'
for file1 in file_list:
    print 'title: %s, id: %s' % (file1['title'], file1['id'])
    if file1['title'] == fileName2Download:
        print ' file Title identiefied :%s'% (file1['title']) 
        myFile = drive.CreateFile({'id': file1['id']})
        if os.path.exists(myLocalPath):
            os.remove(myLocalPath)

        myFile.GetContentFile(myLocalPath)
        print '%s downloaded ' %(myLocalPath)
        break
#         file1.download()

是否有一些设置缺失?我能够列出我客户的谷歌驱动器中的所有文件。然而错误出现时我试图下载文件到我的本地磁盘

共有3个答案

贺奕
2023-03-14

在我的情况下id是错误的我使用的文件夹中的文件所在的ID所以要确保的ID是该文件只而不是该文件夹

尉迟明辉
2023-03-14

如果要创建文件夹,请确保复制文件ID(右键单击)-

卜阳
2023-03-14

我遇到这个错误是因为我试图直接下载一个文件夹。仔细检查您的mimeType是否可以通过PyDrive下载。

 类似资料:
  • Docx4j源代码可在https://github.com/plutext/Docx4j获得。 异常跟踪: docx文档很好(由Word2010创建)。我甚至解压了它,看看是否有content_types.xml。就在那儿。

  • 当我运行MVN-V时,会出现以下错误: 因此,我不明白为什么Maven版本检查指向不存在的文件夹。

  • 问题内容: 我正在尝试在html页面中显示配置的值和角值服务中的版本代码,但显示的不是作者的名字,这是html代码 这是指令… 这是在其中配置和值的服务部分 我在开发人员控制台中遇到的错误是 问题答案: 确保将这些模块( myApp.services 和 myApp.directives )作为主要应用程序模块的依赖项加载,如下所示: 塞子: http ://plnkr.co/edit/wxuFx

  • 我正在从命令行自动化(python、boto3)产品的创建及其在服务目录中的发布。我创建产品,从响应中获取productId。然后,我使用列表启动路径拉入启动路径。当我最终开始设置产品时,我收到一个错误: 调用ProvisionProduct操作时发生错误(ResourceNotFoundException):找不到产品prod-vfwmgz65lckke。 我切换到使用aws cli,得到了相同

  • 我尝试通过Outlook contacts REST API获取用户联系人。我很想获得访问令牌,但当我试图获得联系人时,我得到了404错误。 这是我从Microsoft教程中摘录的代码 有人能说说我做错了什么吗?

  • 我有一个spring应用程序,我正试图通过第三方身份提供商使用单点登录进行设置。 我在测试中有这个功能,但当我将它移到prod时,它正在循环。 我的应用程序发送SAMLRequest,然后我输入用户名和密码。IdP将SAMLACK发送到https://example.com/saml/SSOendpoint。此时,它应该像测试中那样302重定向到我的登录控制器,但它最终循环返回并302'到IdP。