documentation for Google Documents List API, кажется, что вы можете создать локальный документ и загрузить его. Нет ли способа создать и отредактировать документ по адресу Документы Google через API?Как вы создаете документ в Документах 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 напрямую всегда возможна, поскольку API почти REST зарегистрирован как протокол, лежащий в основе всех API-интерфейсов, специфичных для конкретного языка.
Ответ Алекса, хотя, несомненно, правильный, задает вопрос: «Как мне это сделать с помощью API Документов Google?»
Вот способ (в 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')
Это небольшой Mashup методов, которые я нашел в http://code.google.com/p/gdata-python-client/source/browse/tests/gdata_tests/docs/service_test.py, что я в свою очередь, нашел через this post из Google Group для API документов GData.
Ключевые идеи (для меня во всяком случае) были:
- понимая, что формальный параметр конструктора MediaSource в «file_handle» будет принимать какие-либо файл-подобный объект, и
- обнаружения (как катамнестического в ФП в к Google Group после упоминания), что юнит-тесты являются отличным источником примеров
(я не смог найти Python конкретного руководство разработчика ссылается док ссылки Алекса - возможно это было потеряно или закапывают в Google, перемещение документации ssets from code.google.com на developers.google.com. Ссылка Alex теперь перенаправляется на более общий документ, который показывает в основном примеры .NET и Java, но только немного Python.)
Привет @Hephaestus спасибо за информацию - выше для создания электронных таблиц Google - но как можно создать документ Google программно? – BKSpurgeon
- 1. Как вы создаете доверие/хранилища ключей программно?
- 2. Как вы создаете SeqAppender программно в log4net?
- 3. Как вы создаете хороший идентификатор в документах ATOM?
- 4. Как программно загружать документ в Документы Google?
- 5. Как вы программно создаете полностью пустой разреженный файл в Linux?
- 6. Как вы программно создаете несколько компиляций defs в clojure?
- 7. как вы создаете скрипт cron?
- 8. Как вы создаете Rakefile?
- 9. Как вы это создаете?
- 10. Как вы создаете MouseEvent?
- 11. Как программно открыть форму для выбранного SpreadSheet в Документах Google?
- 12. Как вы создаете UITableView программно с помощью автоматического макета?
- 13. Как вы программно создаете слои в google maps engine lite с помощью ajax и json
- 14. Как отключить разрывы страниц в Документах Google?
- 15. Как сделать закрытый поиск в Документах Google?
- 16. Как вы динамически создаете элементы вида Backbone?
- 17. Как вы добавляете документ программно в список в SharePoint?
- 18. Как вы создаете RSS-канал?
- 19. как вы создаете социальный граф?
- 20. Как вы создаете свои фабрики?
- 21. Как вы создаете коллекцию GenuineVariableDescriptors?
- 22. Как вы создаете AFRAME кнопку
- 23. Как вы создаете последовательность modalViewControllers?
- 24. Как вы создаете закрытую воронку?
- 25. Как вы создаете плагин jQuery?
- 26. Как вы создаете индексатор торрентов?
- 27. Как вы создаете PHP-код?
- 28. Как вы создаете двухмерную коллекцию?
- 29. как вы создаете большой массив?
- 30. Как вы создаете английское слово?
Если вы не сделаете бота и не авторизуетесь в Документах Google для доступа к пользовательскому интерфейсу, я не думаю, что это возможно без чрезмерного взлома. Это проще изменить локально, а затем загрузить. –
подлинный вопрос .... –