PyDrive创建xlsx文件并上传(Python)

时间:2018-01-25 20:26:23

标签: python google-drive-api xlsx pydrive

抱歉我的英文。我尝试在google drive(xlsx)中创建新文件并设置一些数据。但我有错误:

AttributeError: 'bytes' object has no attribute 'encode'

我的代码:

    drive = DriveBox() # return pydrive obj

    df = pd.DataFrame({'a': [1, 2], 'b': [2, 3]})
    wb = Workbook()
    writer = pd.ExcelWriter('', engine='openpyxl')
    writer.book = wb
    df.to_excel(writer)

    xmls = drive.g_drive.CreateFile({'title': 'test.xlsx',
                                     'mimeType': 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'})
    xmls.SetContentString(save_virtual_workbook(wb))
    xmls.Upload()

UPD:

python vers:3,6 回溯:

C:\Python36\python.exe C:/work/projects/project/do_api/Main.py
Main
Traceback (most recent call last):
  File "C:/work/projects/project/do_api/Main.py", line 18, in <module>
    class Main:
  File "C:/work/projects/project/do_api/Main.py", line 36, in Main
    xmls.log()
  File "C:\work\projects\project\do_api\xmsl\XmslBox.py", line 80, in log
    xmls.SetContentString(save_virtual_workbook(wb))
  File "C:\Python36\lib\site-packages\pydrive\files.py", line 155, in SetContentString
    self.content = io.BytesIO(content.encode(encoding))
AttributeError: 'bytes' object has no attribute 'encode'

0 个答案:

没有答案