2015-05-27 15 views
5

Tôi đã cố chạy truy vấn dữ liệu trong một trong các tài liệu google của mình và dữ liệu này hoạt động trong vài tháng. Bắt đầu từ ngày hôm qua hoặc ngày hôm trước, tôi nhận thấy rằng tập lệnh của tôi không còn hoạt động nữa. Google đã cập nhật api của họ cho bảng tính chưa? Có ai tìm thấy một cách giải quyết?thư viện bảng tính gdata cho python không hoạt động nữa?

lỗi của tôi trông như thế này:

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 

Tôi đang sử dụng:

  • Python 2.7.5
  • gdata 2.0.18

tôi chỉ sử dụng một tài liệu và không có oauth trong mã của tôi, nếu điều đó tạo ra sự khác biệt (tôi chuyển tên người dùng và mật khẩu cho ClientLogin metho d)

+0

có cùng một vấn đề kể từ tháng 27, năm 2015. gdata 2.0.17 –

Trả lời

5

Trên thực tế đây là câu trả lời cho vấn đề này:

Việc sử dụng đăng nhập client (sử dụng tên đăng nhập/mật khẩu thay vì OAuth2) được khả năng nguyên nhân gây ra lỗi. Giao thức đó đã bị ngừng sử dụng 3+ năm trước đây và đã ngừng hoạt động. Nếu bạn nắm bắt phản hồi HTTP (trong đó dường như có một số nội dung HTML), điều đó có thể xác nhận nếu đó là liên quan đến việc tắt máy. Di chuyển sang OAuth 2 sẽ giúp ứng dụng của bạn hoạt động trở lại.

Sau khi gửi xml để cập nhật trong bảng tính, Google trả lời bằng trang đăng nhập. Nó có nghĩa là xác thực không được làm việc cho gdata tại

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

+0

https://github.com/burnash/gspread thư viện này có tất cả bạn cần cho Oauth2 –

Các vấn đề liên quan