Pydrive:将doc导出为html

时间:2016-05-27 12:11:56

标签: python pydrive

我尝试将.doc文件从Google云端硬盘导出为html。这是我的代码。我没有在文档中看到有关如何将文档下载为html的任何内容。但这是我的代码到目前为止的例子。我不确定docsfile指的是什么。

from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
gauth = GoogleAuth()
gauth.LocalWebserverAuth()

drive = GoogleDrive(gauth)


test='https://docs.google.com/document/d/116rpW5DxfVDFTfJeCh3pFl9K8gtuZV5gX035631SKjm8/edit'
docsfile.GetContentFile(test, mimetype='text/html')

1 个答案:

答案 0 :(得分:2)

首先,docsfile是您要导出的文件,在您的情况下是已存在于Google云端硬盘中的.doc文件。

docsfile = drive.CreateFile({'id': <ID of your file>)

您可以详细了解如何下载文件here。这里是完整的文档http://pythonhosted.org/PyDrive/

或者,您可以使用Google提供的python client直接将文件导出为html:

    response = service.files().export(
        fileId=fileid, mimeType='text/html'
    ).execute()
    if response:
        with open(<full_path_of_your_destination_html_file>, 'wb') as fh:
            fh.write(response)
    else:
        <handle error here>

其中service类似于:

    store = oauth2client.file.Storage(<path_to_your_credentials>)
    credentials = store.get()
    http = credentials.authorize(httplib2.Http())
    service = discovery.build('drive', 'v3', http=http) 

查看有关如何使用Google客户端here的完整示例。

要注意的是,您在Google云端硬盘中的文件必须是Google文档(application/vnd.google-apps.document),而不是doc文件(application/msword),因此您应该确保该文件已上传为有效的Google文档。