Как импортировать файлы CSV в Таблицы Google с помощью Google Apps Script

Если вы используете Excel компании Microsoft, вероятно, привыкли использовать и импортировать данные из внешних источников, например, в CSV-файлы. Мы можем иметь такой же легкостью, в Таблицы Google с помощью Google Apps Script.

Что такое Google Apps Script?

В Apps Script-это платформа сценарий, разработанный Google для разработки небольших приложений на платформе G Suite. Он основан на JavaScript 1.6, но также включает некоторые возможности, 1.7, 1.8 и подмножество API ECMAScript 5. Проекты Apps Script выполняются в инфраструктуру в облаке Google. По словам самой Google, google Apps Script “обеспечивает простые способы автоматизации задач на продукцию и услуги третьих лиц”. Apps Script также доступна в Google Документы и Презентации.

Вы находитесь те сценариев в данном учебнике, на листе, сделать копию на жесткий диск, чтобы просмотреть сценариев и редактирования таблицы.

Проверьте также: Перенос файлов с помощью SFTP в Google Cloud с помощью FileZilla

Доступ к Apps Script

Чтобы получить доступ к Google Apps Scripts, создайте пустой лист или скопируйте пример таблицы; Выберите пункт Инструменты > Редактор скриптов:

 

Новую вкладку с помощью текстового редактора Google Apps Script откроет:

Создание Сценариев

Мы можем легко импортировать файлы CSV в Таблицы Google с помощью функции Utilities.parseCsv() Google Apps Script. Коды ниже показано, как импортировать и просматривать данные в CSV-файл для каждого URL-адреса, сохраненные в Google Drive или в виде вложения в Gmail.

Авторизация Google Apps Scripts

Для всех приведенных ниже примерах, при выполнении сценариев нужно авторизовать в Google Apps, Сценариев для доступа к некоторым функциям Api Google.

Скорее всего, ваш сценарий не быть еще одобрена, на экране появится ниже:

Нажмите кнопку” Показать Дополнительно > Открыть Проект и перейдите к авторизации:

Импорт CSV-файл вложения электронной почты в Gmail

function importarCSVDoGmail() {
  
  var emails = GmailApp.search("from:henrique@marquesf.com"); // Filtramos nossos emails
  var email = emails[0].getMessages()[0]; // Pegamos a primeira mensagem da thread do email
  var anexo = email.getAttachments()[0]; // Pegamos o primeiro anexo do email
  
  // Validamos se esse anexo é um CSV
  if (anexo.getContentType() === "text/csv") {
    
    var planilha = SpreadsheetApp.getActiveSheet(); // Selecionamos o objeto da planilha ativa
    var csv = Utilities.parseCsv(planilha.getDataAsString(), ",");
    
    // Limpamos o conteúdo da planilha antes de importar os dados
    sheet.clearContents().clearFormats();
    // Importamos todos os dados a partir da célula A1
    sheet.getRange(1, 1, csv.length, csv[0].length).setValues(csv);
  }
}

В нашей переменной почты мы проводим поиска фильтра на наш Gmail, чтобы вернуться на первое письмо, соответствующий, мы можем использовать любого оператора системах Gmail внутри функции GmailApp.search("operador:busca"), проверьте их здесь полный список операторов.

Импорт CSV-файл в Google Drive

function importarCSVDoGoogleDrive() {
    var arquivo = DriveApp.getFilesByName("data.csv").next();
    var csv = Utilities.parseCsv(arquivo.getBlob().getDataAsString());
    var planilha = SpreadsheetApp.getActiveSheet();
    planilha.getRange(1, 1, csv.length, csv[0].length).setValues(csv);
}

В приведенном выше примере, мы ищем файл data.csv , который находится в корневой папке Google Drive, измените этот путь по мере необходимости.

Загрузить и импортировать файл CSV на внешний веб-сайт

function importarCSVDaWeb() {
    // URL de download do arquivo CSV
    var csvUrl = "https://marquesfernandes.com/wp-content/uploads/2020/01/exemplo_csv.csv";
    var csv = UrlFetchApp.fetch(csvUrl).getContentText();
    var dados = Utilities.parseCsv(csv);
    var planilha = SpreadsheetApp.getActiveSheet();
    planilha.getRange(1, 1, dados.length, dados[0].length).setValues(dados);
}

Напомнив, что услуги UrlFetchApp просто делает HTTP-запросы, не может подключаться к серверам FTP.

Сохранить себе или поделиться:

Add a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *