App Engine getRecord 不返回内容

发布于 2024-10-06 08:24:30 字数 977 浏览 4 评论 0原文

在 Google App Engine 中,我试图获取特定记录以及与其关联的内容。我使用以下(相关)代码(导入所有必要的 GData 并且对客户端进行身份验证):

sclient = gdata.spreadsheet.text_db.DatabaseClient(username, password)
gdata.alt.appengine.run_on_appengine(sclient)
gdata.alt.appengine.run_on_appengine(sclient._GetDocsClient())
gdata.alt.appengine.run_on_appengine(sclient._GetSpreadsheetsClient())    

ss = sclient.GetDatabases(spreadsheet_key="0AqKqcvXam_kcdFlfckZfVzRiaVpRelp2T1FsVl9rRHc")
processedSheet = ss[0].GetTables(worksheet_id=1)

targetTotals = processedSheet[0].GetRecord(row_number=1)
total1 = targetTotals.content["votea"]

问题出在最后一行。它抛出此错误:

AttributeError: 'NoneType' object has no attribute 'content'

我查看了 GData 电子表格 text_db 模块的源代码,返回行显示如下:

return Record(content=None, row_entry=row_feed.entry[0],

这意味着该函数设计不返回内容?这没有多大意义。我是否使用了错误的功能。我想要完成的是获取连续单元格的值。我的电子表格(processedSheet 指的是)有名为“votea”、“voteb”等的列标题。第一行是整数。那么,有什么想法吗?

In Google App Engine, I am trying to get a specific record and the content associated with it. I use the following (relevant) code (all necessary GData is imported and the client is authenticated):

sclient = gdata.spreadsheet.text_db.DatabaseClient(username, password)
gdata.alt.appengine.run_on_appengine(sclient)
gdata.alt.appengine.run_on_appengine(sclient._GetDocsClient())
gdata.alt.appengine.run_on_appengine(sclient._GetSpreadsheetsClient())    

ss = sclient.GetDatabases(spreadsheet_key="0AqKqcvXam_kcdFlfckZfVzRiaVpRelp2T1FsVl9rRHc")
processedSheet = ss[0].GetTables(worksheet_id=1)

targetTotals = processedSheet[0].GetRecord(row_number=1)
total1 = targetTotals.content["votea"]

The problem is in the last line. It throws this error:

AttributeError: 'NoneType' object has no attribute 'content'

I looked in the source code for the GData spreadsheets text_db module and the return line says this:

return Record(content=None, row_entry=row_feed.entry[0],

Meaning that the function by design doesn't return the content? That doesn't make too much sense. Am I using the wrong function. What I'm trying to accomplish is to get the value of the cells in a row. My spreadsheet (that processedSheet is referring to) has column headers called "votea", "voteb", etc. The first row is integers. So, any ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

自由如风 2024-10-13 08:24:30

确保电子表格中没有任何空行。 API 在遇到第一个空行时将停止读取数据,因此如果电子表格中的第一行为空,您将不会得到任何结果。

make sure you don't have any empty rows in spreadsheet. API will stop reading data when it encounters first empty line, so if your first row in spreadsheet is empty, you wont get any results.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文