Search code examples
pythongoogle-app-enginegoogle-docs-api

Using Google App Engine how to upload document in google docs (python)


I want to upload document, file to google docs using Google Apps Engine (python)

any code or link will be appreciated


Solution

  • Solution is with files Upload, You need to read data using below line in python:

    function to read file size

    def getSize(self,fileobject):
      fileobject.seek(0,2) # move the cursor to the end of the file
      size = fileobject.tell()
      return size
    
    
    
    f = self.request.POST.get('fname').file
    
    media = gdata.data.MediaSource(file_handle=f.read(), content_type=gdata.docs.service.SUPPORTED_FILETYPES[ext], content_length=self.getSize(self.request.POST.get('fname').file))
    

    And also need to modify the gdata python library of Google to achieve this:

    client.py:

    in def upload_file

    replace:

    while not entry:
     entry = self.upload_chunk(start_byte, self.file_handle.read(self.chunk_size))
     start_byte += self.chunk_size
    

    With:

    while not entry:
      entry = self.upload_chunk(start_byte, self.file_handle)
      start_byte += self.chunk_size
    

    And you can upload file directory to google doc