Sembra che non ci sia (a mia conoscenza) un'API per modificare Google Documenti (non fogli di calcolo, i loro documenti basati su HTML). Qualcuno ha fatto qualcosa del genere? Forse scaricando la versione HTML, modificando e caricando le modifiche?In che modo gli sviluppatori possono modificare un documento Google in modo programmatico? C'è un'API di documenti?
risposta
Non proprio sicuro se questo è esattamente ciò che stai cercando ma hai dato un'occhiata qui http://code.google.com/apis/documents/docs/3.0/developers_guide_protocol.html Sembra che consenta la modifica del contenuto (v3.0 comunque).
Esiste un'app di esempio, Dr. Edit, nella documentazione di Google Drive.
Il Document List API è stato ritirato da settembre 2012 e sembra che potrebbe essere retired after April 2015.
Aggiornamento della versione HTML utilizzando l'API di Drive, come suggerisce la domanda, sembra essere l'unico altro modo. Ho provato questo e ho avuto alcuni problemi.
- I commenti vengono convertiti in citazioni e aggiunti alla fine del documento.
- Se qualcun altro sta modificando il documento tramite il browser, tutte le modifiche apportate da esse tra la lettura dell'API e il tempo di aggiornamento vengono perse.
- Gli aggiornamenti di un documento possono interrompere la formattazione. Ad esempio ho aggiornato un documento più volte e la spaziatura verticale tra alcuni elementi (h1, h2 ecc.) Ha continuato ad allargarsi ogni volta e ha rovinato il documento.
- Quando si verifica un aggiornamento dell'API, il cursore di chiunque nel documento viene spostato nella parte superiore della pagina.
Ci possono essere altri problemi. Questi sono solo quelli che ho trovato negli ultimi giorni.
C'è com.google.api.services.drive.model.File.getExportLinks
È possibile ottenere un Google Doc come docx (per esempio), modificarlo utilizzando l'editor preferito docx, quindi caricare di nuovo . Vedere the samples per farlo (a partire da GoogleDriveDownloadAsDocx) nel contesto di docx4j. Nota il README.
Oppure fare lo stesso con gli altri formati di esportazione.
Google Documenti non dispone attualmente di un'API REST, tuttavia gli sviluppatori possono accedere a livello di programmazione (CRUD) documenti utilizzando Google Apps Script, applicazioni JavaScript sul lato server che sono ospitate ed eseguite nel cloud di Google. Se sei nuovo di Apps Script o per la modifica di Google Docs con essa, ecco alcune risorse di apprendimento:
- Your first script che crea & modifica una Doc, quindi utilizza Gmail per inviarlo a voi.
- Ho 4 video intro per voi (per lo più fogli al gusto)
- Sono in this playlist (vedi video 5, 8, 22, 24)
- Qualsiasi video prossime saranno in this series
- pagine utili nella documentazione ufficiale
- Come CRUD Google Documenti con Apps script overview page
- Estendere le funzionalità Documenti con la creazione di componenti aggiuntivi di Documenti tramite this quickstart
- Apps Script reference documentation per Google Docs (Document Service)
- Vedi Google Docs add-ons che altri sviluppatori hanno costruito
semplice esempio: se si dispone di un documento esistente con un ID file (Drive) di DOCUMENT_ID_GOES_HERE
, ecco come fondamentalmente lo modifichi con Apps Script, facendo una pseudo "mail merge" di nome & email nei segnaposti dei documenti indicati {NAME}
e {ADDR}
:
function mergeNameEmail() {
// Open a document by ID
var doc = DocumentApp.openById(DOCUMENT_ID_GOES_HERE);
// Access the body of the document
var body = doc.getBody();
// Merge name & address from template
body.replaceText("{NAME}", "Ima Developer");
body.replaceText("{ADDR}", "123 Main St, Anytown, XX 00000");
}
Verificherà i documenti, non ha pensato di guardare sotto i laboratori. –
Sembra che sia possibile anche con la versione 2. Ero solo confuso dal nome "Elenco documenti", non sembra che sia dove si trova il montaggio, ma sembra che sia dove lo hanno messo. –