Il ne semble pas y avoir (à ma connaissance) d'API pour éditer Google Docs (pas de feuilles de calcul, leurs documents HTML). Est-ce que quelqu'un a fait quelque chose comme le? Peut-être en téléchargeant la version HTML, en éditant et en téléchargeant les changements?Comment les développeurs peuvent-ils modifier un document Google par programmation? Y a-t-il une API Docs?
Répondre
Vous ne savez pas vraiment si c'est ce que vous cherchez exactement, mais avez-vous jeté un coup d'oeil ici http://code.google.com/apis/documents/docs/3.0/developers_guide_protocol.html On dirait qu'il permet de modifier le contenu (v3.0 de toute façon).
Il existe un exemple d'application pour cela, Dr. Edit, dans la documentation de Google Drive.
Le Document List API est obsolète depuis septembre 2012 et ressemble à retired after April 2015.
La mise à jour de la version HTML à l'aide de l'API Drive, comme le suggère la question, semble être la seule autre solution. J'ai essayé cela et j'ai éprouvé quelques problèmes.
- Les commentaires sont convertis en citations et ajoutés à la fin du document.
- Si quelqu'un d'autre édite le document via le navigateur, toutes les modifications apportées par l'API entre la lecture et la mise à jour sont perdues.
- Les mises à jour d'un document peuvent interrompre le formatage. Par exemple, j'ai mis à jour un document plusieurs fois et l'espacement vertical entre certains éléments (h1, h2, etc.) a continué à s'élargir à chaque fois et a ruiné le document.
- Lorsqu'une mise à jour d'API se produit, le curseur de n'importe qui dans le document est déplacé vers le haut de la page.
Il peut y avoir plus de problèmes. Ce sont juste ceux que j'ai trouvés ces derniers jours.
Il est com.google.api.services.drive.model.File.getExportLinks
Vous pouvez obtenir un Google Doc comme un docx (par exemple), modifier à l'aide de votre éditeur de docx favori, puis télécharger à nouveau . Voir the samples pour ce faire (en commençant par GoogleDriveDownloadAsDocx) dans le contexte de docx4j. Notez le README.
Ou faites de même avec l'un des autres formats d'exportation.
Google Docs n'a actuellement pas d'API REST, mais les développeurs peuvent accéder par programmation (CRUD) à des documents utilisant Google Apps Script, des applications JavaScript côté serveur hébergées et exécutées dans le cloud de Google. Si vous êtes nouveau Apps Script ou à l'édition de Google Docs avec elle, voici quelques ressources d'apprentissage:
- Your first script qui crée & édite un Doc, puis utilise Gmail pour vous l'envoyer .
- J'ai 4 vidéos d'introduction pour vous (la plupart Sheets aromatisés)
- Ils sont en this playlist (voir vidéos 5, 8, 22, 24)
- Toutes les vidéos à venir seront this series
- pages utiles dans les documents officiels
- Comment cRUD Google Docs avec Apps Script overview page
- étendre la fonctionnalité Docs en créant Docs add-ons via this quickstart
- Apps Script reference documentation pour Google Docs (Document Service)
- Voir Google Docs add-ons que d'autres développeurs ont construit
Exemple simple: si vous avez un Doc existant avec un ID de fichier (Drive) de DOCUMENT_ID_GOES_HERE
, voici comment vous l'éditeriez fondamentalement avec Apps Script, en faisant un pseudo "mail merge" du nom & email dans le document donné des espaces réservés {NAME}
et {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");
}
Va vérifier les docs, ne pense pas à regarder sous les laboratoires. –
On dirait que c'est possible avec la version 2 aussi. J'étais juste confus par le nom 'Documents List' qui ne semble pas être l'endroit où vous trouverez le montage, mais c'est ce qui semble être le cas. –