documentation for Google Documents List API, có vẻ như bạn có thể tạo tài liệu cục bộ và tải lên. Không có cách nào để thực sự tạo và chỉnh sửa tài liệu trên Google Documents thông qua API không?Làm cách nào để tạo tài liệu trong Google Documents theo lập trình?
Trả lời
Trong khi the docs gọi nó là "upload", mọi thứ đều nắm để gửi một định dạng thích hợp HTTP POST
yêu cầu, vì vậy tất nhiên nó có thể thực sự là một sáng tạo mới chứ không phải là một thực tế "tải lên" của một tập tin khác hiện có. (Việc tạo thông qua các yêu cầu POST
tương tự như thông thường được mô tả là REST API
, mặc dù trong thực tế REST
bạn thường sử dụng yêu cầu PUT
thay vì tất nhiên).
Bạn chỉ cần tạo một blob của dữ liệu đại diện cho tài liệu của bạn trong bất cứ định dạng được liệt kê here - tùy thuộc vào ngôn ngữ lập trình của bạn, đơn giản nhất có thể text/csv
cho một bảng tính và application/rtf
cho một văn bản tài liệu - sau đó đưa vào trong một dữ liệu POST
được định dạng phù hợp. Ví dụ, để tạo ra một bảng tính theo cách đơn giản (không có siêu dữ liệu), bạn có thể POST
cái gì đó như:
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
Mỗi ngôn ngữ lập trình cụ thể mà một API chuyên dụng được cung cấp có thể cung cấp sự giúp đỡ với điều này không quá khó bài tập; ví dụ: trong Python, theo số the docs, API đề xuất sử dụng ETags
để tránh ghi đè thay đổi khi nhiều khách hàng đồng thời "tải lên" (tức là tạo hoặc cập nhật tài liệu). Nhưng việc chuẩn bị POST trực tiếp là luôn luôn có thể, vì API REST gần như được ghi lại là giao thức nằm dưới tất cả các API dành riêng cho ngôn ngữ.
Câu trả lời của Alex, trong khi chắc chắn đúng, đặt ra câu hỏi: "làm cách nào để làm điều đó thông qua API Google Documents?"
Đây là một cách (bằng Python, vì tôi rằng loại con trai):
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')
Đây là một mashup nhỏ của kỹ thuật mà tôi tìm thấy trong http://code.google.com/p/gdata-python-client/source/browse/tests/gdata_tests/docs/service_test.py, mà tôi lần lượt tìm thấy qua this post từ Nhóm Google cho API tài liệu GData.
Các hiểu biết quan trọng (cho tôi anyway) là:
- nhận ra rằng tham số chính thức các nhà xây dựng của MediaSource "file_handle" sẽ mất bất kỳ đối tượng tập tin như thế, và
- phát hiện (như followup của OP đến Bài đăng trên Google Group đề cập đến) rằng các bài kiểm tra đơn vị là một nguồn ví dụ tuyệt vời
(Tôi không thể tìm thấy hướng dẫn dành cho nhà phát triển cụ thể của Python được tham chiếu bởi liên kết tài liệu của Alex - có thể nó đã bị mất hoặc chôn trong Google di chuyển tài liệu ssets từ code.google.com đến developers.google.com. Bây giờ, liên kết của Alex chuyển hướng đến tài liệu chung chung hơn hiển thị hầu hết các ví dụ .NET và Java, nhưng chỉ một chút Python.)
Xin chào @Hephaestus cảm ơn vì thông tin - ở trên là để tạo bảng tính google - nhưng làm cách nào để tạo tài liệu google có lập trình? – BKSpurgeon
- 1. Làm cách nào để tạo ColorStateList theo lập trình?
- 2. Làm cách nào để lập trình thủ tục tài liệu?
- 3. Có cách nào để sử dụng Google Documents để lập trình cộng tác không?
- 4. Bắt đầu lập trình hoạt động 'Thêm tài khoản Google' theo cách lập trình trong Android
- 5. Google Documents lưu trữ tài liệu như thế nào (trên chương trình phụ trợ)?
- 6. Làm cách nào để tích hợp tài liệu Google Tài liệu trong Liferay?
- 7. Làm cách nào để tạo UIScrollView theo lập trình?
- 8. Bất kỳ cách nào để xây dựng Google Documents như trình xem cho tệp PDF?
- 9. Làm cách nào để tạo một cơ sở dữ liệu theo lập trình trong SQL Server?
- 10. API Google Documents với Python
- 11. API cho Trình xem Google Documents
- 12. Làm cách nào để tạo tài liệu cho trình thiết lập thuộc tính Python bằng Sphinx?
- 13. Google sử dụng trình tạo tài liệu nào?
- 14. Lập trình mã thông báo OAuth theo lập trình cho tài khoản google
- 15. Làm thế nào để lập trình tạo PDF từ bất kỳ tài liệu nào trên OSX?
- 16. Tạo HTML tài liệu theo lập trình bằng cách sử dụng Java
- 17. Google Drive và API Documents
- 18. Làm thế nào để tạo cơ sở dữ liệu Microsoft Access trong C# theo lập trình?
- 19. Cách điều chỉnh khoảng cách giữa đoạn trong tài liệu luồng theo lập trình
- 20. Làm cách nào để thay đổi mức thu phóng của bản đồ Google theo lập trình?
- 21. Trình bao bọc đối tượng iOS-C cho Google Documents
- 22. Làm cách nào để thêm dữ liệu vào lịch Google theo chương trình trong Android?
- 23. Tạo cửa sổ HUD theo lập trình
- 24. Các trang web như Google Documents và Zoho Writer sử dụng để tạo tài liệu MS Office
- 25. Cách truy cập lịch sử trình duyệt Google Chrome theo lập trình trên máy cục bộ
- 26. Tôi làm cách nào để kết xuất dữ liệu JMX theo cách lập trình?
- 27. Làm cách nào để tạo chuỗi trong C# theo lập trình?
- 28. api của Google Documents dành cho android
- 29. Cách tạo NSPopover theo lập trình
- 30. Làm thế nào để bạn gọi "Định dạng tài liệu" lập trình từ C#?
Trừ khi bạn tạo bot và xác thực vào Google Documents để truy cập vào giao diện người dùng, tôi không nghĩ là có thể mà không quá hung tợn. Nó đơn giản hơn để sửa đổi cục bộ và sau đó tải nó lên. –
câu hỏi chính hãng .... –