微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Pydrive docx 文件上传不恢复书签链接

如何解决Pydrive docx 文件上传不恢复书签链接

我有一个使用 python-docx 创建 docx 文件的 python 脚本。文档文件的超链接设置为链接到文档段落内的书签。如果我在笔记本电脑中打开文档,它会正确显示。但是当我上传后在谷歌驱动器上打开文档时,它跳过了超链接部分。任何想法可能会出错?这就是我使用 pydrive 上传文档的方式。如果有帮助,我应该尝试以 PDF 格式上传吗?

    http = drive.auth.Get_Http_Object()
    # createfile 
    file1 = drive.CreateFile({'title': 'Test Report.docx','mimeType': 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'})            
    file1.SetContentFile("read.docx")
    file1.Upload(param={"http": http})

解决方法

找到了无需打开 Word 文档即可执行此操作的正确方法。它需要安装 PyWin32 库。

import win32com.client
def update_toc(file):
    word = win32com.client.DispatchEx("Word.Application")
    print(os.path.join(os.getcwd(),file))
    doc = word.Documents.Open(os.path.join(os.getcwd(),file))
    doc.TablesOfContents(1).Update()
    word.ActiveDocument.Fields.Update()   
    doc.Close(SaveChanges=True)
    word.Application.Quit()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。