用于python的gdata电子表格库不再工作了吗?

时间:2015-05-27 20:32:36

标签: python google-sheets gdata

我试图在我的某个Google文档中运行数据查询,并且它已经工作了几个月。从昨天或前一天开始,我注意到我的脚本不再有效。 Google是否更新了电子表格的API?有人找到了解决方法吗?

我的错误如下:

Traceback (most recent call last):
  File "build_packer_image.py", line 311, in <module>
    for index, entry in enumerate(client.GetWorksheetsFeed(doc_key).entry):
  File "/build/toolchain/mac-10.5-32/lib/python2.7/site-packages/gdata/spreadsheet/service.py", line 129, in GetWorksheetsFeed
    converter=gdata.spreadsheet.SpreadsheetsWorksheetsFeedFromString)
  File "/build/toolchain/mac-10.5-32/lib/python2.7/site-packages/gdata/service.py", line 1074, in Get
    return converter(result_body)
  File "/build/toolchain/mac-10.5-32/lib/python2.7/site-packages/gdata/spreadsheet/__init__.py", line 411, in SpreadsheetsWorksheetsFeedFromString
    xml_string)
  File "/build/toolchain/mac-10.5-32/lib/python2.7/site-packages/atom/__init__.py", line 93, in optional_warn_function
    return f(*args, **kwargs)
  File "/build/toolchain/mac-10.5-32/lib/python2.7/site-packages/atom/__init__.py", line 127, in CreateClassFromXMLString
    tree = ElementTree.fromstring(xml_string.replace('doctype','DOCTYPE'))
  File "<string>", line 125, in XML
cElementTree.ParseError: no element found: line 1, column 0
Build step 'Execute shell' marked build as failure
Finished: FAILURE

我正在使用:

  • Python 2.7.5
  • gdata 2.0.18

我只是在我的代码中使用文档密钥而没有oauth,如果这有所不同(我将用户名和密码传递给ClientLogin方法)

1 个答案:

答案 0 :(得分:5)

实际上这是问题的答案:

  

使用客户端登录(使用用户名/密码而不是oauth2)是   可能是错误的原因。该协议已被弃用3年以上   以前,只是关机。如果捕获HTTP响应(哪个   似乎有一些HTML内容),可能会确认是否存在   与关机有关。迁移到OAuth 2会获得您的应用   再次工作。

在电子表格中发送xml for update后,google以登录页面回复。 这意味着身份验证现在不适用于gdata

https://code.google.com/a/google.com/p/apps-api-issues/issues/detail?id=3851#c2