documentation for Google Documents List API,似乎说你可以创建一个本地文件并上传它。有没有办法通过API实际创建和编辑文档on Google Docs?如何以编程方式在Google文档中创建文档?
回答
虽然the docs称之为“上传”,一切都归结为发送格式正确HTTP POST
要求,所以当然的它实际上是一个新的创造,而不是实际的,否则现有文件的“上传”。 (通过POST
请求的创建与通常描述为REST API
的请求类似,但实际上REST
通常使用PUT
请求,而不是当然)。
你只需要创建一个上市here代表任何格式的文档数据的斑点 - 这取决于你的编程语言,最简单的可能是text/csv
的电子表格和application/rtf
一个文本文档 - 再放入以适当格式的POST
数据。例如,为了使在最简单的方式电子表格(没有元数据),你可以POST
是这样的:
POST /feeds/default/private/full HTTP/1.1
Host: docs.google.com
GData-Version: 3.0
Authorization: <your authorization header here>
Content-Length: 81047
Content-Type: text/csv
Slug: Example Spreadsheet
ColumnA, ColumnB
23, 45
为其专用API提供可以提供帮助,这不那么硬每个特定的编程语言任务;例如,在Python,每the docs,该API建议使用ETags
,以避免覆盖的变化当多个客户端同时是“上载”(即,在创建或更新文档)。但是直接准备POST始终是可能的,因为几乎REST API被记录为协议,这些协议是所有特定于语言的API的基础。
亚历克斯的回答毫无疑问是正确的,它引出了一个问题:“我该如何通过Google Docs API做到这一点?”
这里有一个方法(在Python,因为我是那种人):
import gdata.docs.service
import StringIO
client = gdata.docs.service.DocsService()
client.ClientLogin(username, password,
source='Spreadsheet Creation Example')
content = 'COL_A, COL_B, COL_C, COL_D\ndata1, data2, data3, data4'
ms = gdata.MediaSource(file_handle=StringIO.StringIO(content),
content_type='text/csv',
content_length=len(content))
entry = client.Upload(ms, 'Test Spreadsheet')
这是我在http://code.google.com/p/gdata-python-client/source/browse/tests/gdata_tests/docs/service_test.py发现技术小混搭,我又经由this post发现Google Group for GData Docs API。
的重要见解(我反正)分别为:
- 意识到了MediaSource的构造函数的形参“file_handle”将采取任何类似文件的对象,并
- 发现(如OP的随访到谷歌集团后提到),该单元测试的例子
的重要来源(我是不是能找到Python特定的开发者指南由亚历克斯的文档链接引用的 - 可能已遗失或埋在谷歌的移动文件a从code.google.com发送到developers.google.com。亚历克斯的链接会重定向至更通用的文件,显示大部分为.NET和Java的例子,但只有一点点的Python)。
嗨@Hephaestus感谢您的信息 - 上面是使谷歌电子表格 - 但是一个人如何可以编程方式创建一个谷歌文件? – BKSpurgeon 2017-04-28 16:10:20
- 1. 在Google文档中以编程方式创建锚定评论
- 2. 如何以编程方式上传Google文档上的文档?
- 3. 以编程方式下载Google文档?
- 4. Java以编程方式创建并保存Google文档
- 5. 以编程方式在SharePoint文档库中添加/创建新文档
- 6. 如何以编程方式操作本地Google文档文件
- 7. 如何通过模板以编程方式创建Word文档
- 8. 以可编程方式在可可中创建新文档
- 9. 以编程方式在文档库中搜索特定文档
- 10. 如何在Google文档中创建新文档
- 11. Google App Engine - 文档编辑器创建/使用Google文档?
- 12. SharePoint:在文档库之间以编程方式移动文档
- 13. Google Drive SDK:以编程方式固定Google文档修订
- 14. Android:以编程方式获取Google文档文件
- 15. 以编程方式将文件上传到Google文档
- 16. 以编程方式创建Word(.docx)文档使用docx4j
- 17. 使用XSD以编程方式创建XML文档
- 18. 以编程方式创建Word 2010文档
- 19. 如何使用genshi.builder以编程方式构建HTML文档?
- 20. 以编程方式访问Word 2007文档的文档属性
- 21. 以编程方式设置文档库的文档模板
- 22. 以编程方式打印文档
- 23. 以编程方式打印HTML文档
- 24. 以编程方式比较word文档
- 25. 以编程方式生成Excel文档
- 26. 以编程方式打印PDF文档
- 27. 以编程方式更新excel文档
- 28. 如何以编程方式在c中搜索PDF文档#
- 29. 如何以编程方式将文档保存在OpenOffice.org中?
- 30. 如何以编程方式在SharePoint中下载文档?
除非你犯了一个机器人和验证到谷歌文档访问UI,我不认为这是可能的没有过分的黑客。在本地修改然后上传会更简单。 – 2010-04-24 15:10:33
真正的问题.... – 2014-05-28 12:40:09