创建新的电子表格(Google API / Python)

时间:2012-05-10 04:53:13

标签: python-2.7 google-docs-api

我已设法使用以下代码创建新的电子表格文档:

# Authorize
client = gdata.docs.client.DocsClient(source='TestDoc')
client.http_client.debug = False
client.client_login(self.cfg.get('google', 'email'), self.cfg.get('google', 'password'), source='TestDoc', service='writely')

# Create our doc
document = gdata.docs.data.Resource(type='spreadsheet', title='Test Report')
document = client.CreateResource(document)

据我了解,您必须使用电子表格服务进行身份验证才能操作电子表格。

# Connect to spreadsheet API
client = gdata.spreadsheet.service.SpreadsheetsService()
client.email = self.cfg.get('google', 'email')
client.password = self.cfg.get('google', 'password')
client.source = 'TestDoc'
client.ProgrammaticLogin()

我的问题是如何从上面第一步的创建中获取电子表格密钥,以便使用gdata.spreadsheet api访问该电子表格?

1 个答案:

答案 0 :(得分:10)

我发现document.GetId()的返回值包含我们需要的密钥。我不知道这是否是获得密钥的正确方法,但它确实有效。

spreadsheet_key = document.GetId().split("%3A")[1]
print "Key = %s" % spreadsheet_key

#example of using this key
w = client.AddWorksheet("Sheet 42", 5, 5, spreadsheet_key)