Обновление электронной таблицы в Документах Google - PullRequest
4 голосов
/ 28 февраля 2012

У меня есть скрипт на python, который берет сгенерированный CSV и загружает его в Google Docs.Он может загрузить его просто отлично, но я не могу заставить его заменить данные, он возвращает ошибку, на которую не могу найти ссылку.

Le Код:

import gdata.auth
import gdata.docs
import gdata.docs.service
import gdata.docs.data
import gdata.docs.client


email = 'admin@domain.com'
CONSUMER_KEY='domain.com'
CONSUMER_SECRET='blah54545blah'


ms_client = gdata.docs.client.DocsClient('Domain_Doc_Upload')
ms_client.auth_token = gdata.gauth.TwoLeggedOAuthHmacToken(CONSUMER_KEY, CONSUMER_SECRET, email)

url = 'http://docs.google.com/feeds/documents/private/full/sd01blahgarbage'

ms = gdata.data.MediaSource(file_path="C:\\people.csv", content_type='text/csv')
csv_entry2 = ms_client.Update(url, ms)

Возвращает:

Traceback (most recent call last):
  File "so_test.py", line 19, in <module>
    csv_entry2 = ms_client.Update(ms, url)
  File "build\bdist.win-amd64\egg\gdata\client.py", line 717, in update
AttributeError: 'MediaSource' object has no attribute 'to_string'

Я не могу найти ничего об атрибуте 'to_string', поэтому я потерян на трассе.Любая помощь, высоко ценится.

1 Ответ

1 голос
/ 06 марта 2012

Я взглянул на документы, и похоже, что метод Update берет (запись, мс), где запись должна быть объектом gdata.docs.data.DocsEntry.Вы должны иметь возможность получить объект DocsEntry, получая фид от вашего клиента.

feed = client.GetDocList ()

...