Google скрипт для резервного копирования текста с веб-страницы в виде электронной таблицы
Мне нужен скрипт google, который будет автоматически создавать резервную копию одной конкретной веб-страницы каждый день на Google Диске и сохранять ее в виде электронной таблицы (или файла xlsx), если это возможно.
Я нашел этот сценарий:
https://ctrlq.org/code/19687-backup-web-pages-daily-google-scripts
и используя это:
http://stackoverflow.com/questions/36849344/save-web-page-as-google-doc-or-pdf-to-drive
успейте сохранить его в формате pdf.
Я также пытаюсь использовать это преобразование mimeType, но я не знаю, как импортировать эту часть в скрипт.
http://stackoverflow.com/questions/22236558/is-there-a-way-to-save-html-text-to-a-file-in-google-drive-using-apps-script
Мне удалось получить не xlsx файлы,а pdf. Я также не знаю, как сделать структуру папок таким образом, чтобы резервные файлы сохранялись только в основной папке резервной копии без создания новых подпапок для каждой новой даты. Не мог бы кто-нибудь помочь мне с этой папкой или проблемой xlsx, или с тем и другим? Я очень мало знаю о кодировании, поэтому буду благодарен за любую помощь.
Что я уже пробовал:
Вот код, который работает сейчас и создает структуру папок и сохраняет их в формате pdf:
var RESOURCE_URL = 'https://news.google.com', BACKUP_FOLDER_ID = '<THE_ID_OF_THE_FOLDER_WHERE_YOUR_BACKUPS_WILL_LIVE>', FOLDER_NAME_FORMAT = 'yyyy-MM-dd', FILE_NAME_FORMAT = "yyyy-MM-dd'T'HH:mm:ss", // Customize your file extension. FILE_EXT = '.pdf', // Folder names are all going to look like this. now = new Date(), FOLDER_NAME = Utilities.formatDate(now, 'GMT', FOLDER_NAME_FORMAT), FILE_NAME = Utilities.formatDate(now, 'GMT', FILE_NAME_FORMAT) + FILE_EXT; function createBackup() { var folder = getFolder(FOLDER_NAME); createBackupFile(folder, FILE_NAME, fetchData()); } // Ensures we're always working within the backup directory. function getFolder(name) { var backupFolder = getBackupFolder(), folders = backupFolder.getFoldersByName(name); if (folders.hasNext()) { folder = folders.next(); } else { folder = backupFolder.createFolder(name); } return folder; } // Returns the root folder where our backups exist. function getBackupFolder() { return DriveApp.getFolderById(BACKUP_FOLDER_ID); } function createBackupFile(folder, filename, data, overwrite) { if (overwrite) { // Technically we're not overwriting here. We're just deleting // the duplicates. var existingFiles = folder.getFilesByName(filename); while (existingFiles.hasNext()) { var file = existingFiles.next(); folder.removeFile(file); } } } function fetchData() { var exportUrl = RESOURCE_URL; var response = UrlFetchApp.fetch(exportUrl); var htmlBody = response.getContentText(); var blob = Utilities.newBlob(htmlBody, 'text/html').getAs('application/pdf').setName(FILE_NAME); return folder.createFile(blob); }