2013-10-25 42 views
2

我使用Python 2.7,我试图以一个文件(* .TXT)上传到与我共享文件夹的共享。蟒蛇上传文件到谷歌驱动器文件夹与我

到目前为止,我能够把它上传到我的硬盘,但如何订到哪个文件夹。我得到的网址我必须放置这个文件。

谢谢

这是我到目前为止的代码

def Upload(file_name, file_path, upload_url): 

    upload_url = upload_url 
    client = gdata.docs.client.DocsClient(source=upload_url) 
    client.api_version = "3" 
    client.ssl = True 
    client.ClientLogin(username, passwd, client.source) 

    filePath = file_path 
    newResource = gdata.docs.data.Resource(filePath,file_name) 

    media = gdata.data.MediaSource() 
    media.SetFileHandle(filePath, 'mime/type') 

    newDocument = client.CreateResource(
     newResource, 
     create_uri=gdata.docs.client.RESOURCE_UPLOAD_URI, 
     media=media 
    ) 
+0

为什么在重新尝试上载文件和文件夹时会出现重复?如何创建文件夹并上传到文件夹?我变得非常沮丧这里,请大家帮忙 – Yebach

回答

4

您正在使用的API已被弃用。改为使用google-api-python-client

按照此official python quickstart guide简单地上传文件到文件夹。此外,送父母参数请求体是这样的:body['parents'] = [{'id': parent_id}]

或者,你可以使用PyDrive,从而简化了很多对付谷歌云端硬盘API作品的Python包装库。整个代码如此简单:

from pydrive.auth import GoogleAuth 
from pydrive.drive import GoogleDrive 

gauth = GoogleAuth() 
drive = GoogleDrive(gauth) 

f = drive.CreateFile({'parent': parent_id}) 
f.SetContentFile('cat.png') # Read local file 
f.Upload() # Upload it 
+0

安装API的我得到一个错误pydrive.settings.InvalidConfigError后:没有发现无效的客户端机密文件文件“的client_secrets.json”。我在哪里放json文件?将json放入目录后,会打开一个浏览器窗口并要求确认我的应用程序 - 我该如何取消该操作 – Yebach

+0

您无法至少提示一次用户确认。这就是OAuth的工作原理。但是,您可以保存凭据以在用户第一次授权访问后重用。看看文档的详细信息:http://pythonhosted.org/PyDrive/index.html –

+0

因为我正在做一个服务器运行脚本,从谷歌文档读取创建一个新的文件并上传它,你有什么建议使用解决这个问题? – Yebach

相关问题