Продолжайте использовать Python для управления содержимым электронных таблиц в Интернете

Если вы щелкнули по этой статье, вы, вероятно, использовали Python для управления содержимым файлов Excel. Как широко распространенный инструмент, Excel - очень хороший вариант для работы с электронными таблицами. Несмотря на то, что Microsoft запустила OneDrive, многие люди по-прежнему используют Excel локально и опцию Google Диска, Google Таблицы, для облака.



В любом случае, наиболее важным преимуществом при использовании облачного сервиса является отказ от локальных файлов. Им требуется локальное хранилище, ими сложно поделиться с друзьями, а контроль версий - это кошмар.

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

Возможно, вы знаете, что Google предлагает встроенную опцию редактора скриптов Google Таблиц, Службу электронных таблиц, как часть Скрипта Google Apps. Есть действительно очень полезные методы и атрибуты. Это также позволяет вам управлять историей выполнения вашего проекта и другой соответствующей информацией через платформу Google.

Однако, как энтузиаст Python, вы, вероятно, знаете, насколько этот язык прост. Перечислим преимущества:

  • Вы уже используете Python для других существующих приложений - требуется время, чтобы изучить синтаксис и изучить методы и атрибуты нового языка.
  • У Python есть большие активные сообщества и обширные библиотеки. Итак, пока вы можете подключиться к этому новому источнику данных (Google Таблицы), вы можете продолжать делать много вещей.

Еще одна хорошая новость: с этого момента вы можете проверить шаги, необходимые для установки необходимого доступа. Остальное можно оставить в обычном режиме.

1. Включение внешнего доступа к Google Таблицам

В этом разделе мы рассмотрим шаги, необходимые для предоставления доступа из внешнего приложения к Google Таблицам. Основная цель здесь - назначить учетные данные вашего проекта Google как для Google Таблиц, так и для API Google Диска.

Это процесс:

  1. Настройте свой проект на Google Cloud Platform.
  2. Создайте учетные данные своего проекта.
  3. Включите API Google Таблиц и API Google Диска.
  4. Назначьте учетные данные своего проекта как API Google Таблиц, так и API Google Диска.

Давайте посмотрим на каждую из них.

1.1. Настройте свой проект на Google Cloud Platform

После входа в Google Cloud Platform, если вы впервые на платформе, вы увидите следующую страницу в разделе Главная:

Нажимая «СОЗДАТЬ ПРОЕКТ», вы устанавливаете основную информацию о своем проекте:

Хорошо, ваш проект создан.

1.2. Создайте учетные данные своего проекта

Теперь вам нужно найти «API и сервисы». Затем нажмите «СОЗДАТЬ УЧЕТНЫЕ ДАННЫЕ», а затем опцию «Сервисный аккаунт»:

Далее вам нужно ввести некоторую основную информацию:

После нажатия кнопки «СОЗДАТЬ» в разделе «Проект» выберите вариант «Владелец»:

Внизу страницы нажмите на ссылку электронной почты своего служебного аккаунта:

Затем нажмите «ДОБАВИТЬ КЛЮЧ» и «Создать новый ключ»:

Выберите вариант JSON:

Теперь вы скачали файл учетных данных своего проекта JSON.

1.3. Включите API Google Таблиц и API Google Диска.

Вам нужно искать как «Google Sheets API», так и «Google Drive API» (порядок не имеет значения).

В качестве примера взгляните на страницу «API Google Таблиц». Здесь вам нужно нажать кнопку «ВКЛЮЧИТЬ» (убедитесь, что вы делаете это также для Google Drive API):

Оба API включены.

1.4. Назначьте учетные данные своего проекта как API Google Таблиц, так и API Google Диска.

После включения API нажмите «СОЗДАТЬ УЧЕТНЫЕ ДАННЫЕ» в правом верхнем углу обоих из них (опять же, я распечатал только API Google Таблиц, ниже):

Вы будете перенаправлены на следующие два экрана (для каждого из API):

После выбора показанных параметров Google Cloud Platform определит учетные данные вашего уже созданного проекта и будет использовать их для API:

Нажмите «ГОТОВО», и теперь оба API правильно идентифицированы.

2. Скрипт Python

Пока что вы разрешили внешним приложениям подключаться к Google Таблицам через оба API Google. Теперь давайте посмотрим, что вам нужно учесть в своем скрипте Python:

  1. Требования и зависимости
  2. Аутентификация и авторизация
  3. Сценарий приложения

2.1. Требования и зависимости

Вы можете подумать, что это самая скучная часть всего потока. Ты не прав.

Давайте будем откровенны. Вам нужно выполнить только одно требование - импортировать две библиотеки: gspread и oauth2client. Убедитесь, что они оба загружены локально, и тогда это будет первая часть вашего скрипта Python:

А как насчет зависимостей? Помните файл JSON, который вы скачали при создании учетных данных своего проекта? Это одна из зависимостей. В основном он покрывает ваш закрытый ключ, который необходим для процесса аутентификации.

Другой - просто предоставить доступ к электронной таблице Google Таблиц с помощью электронной почты учетной записи службы, как, например, вы бы сделали это с другом. Вы можете проконсультироваться с ним либо в сеансе учетных данных в Google Cloud Platform, либо в файле JSON («client_email»), упомянутом в последнем абзаце.

2.2. Аутентификация и авторизация

Итак, если у вас есть файл JSON в том же каталоге, в котором вы собираетесь выполнить свой файл .py, вы можете рассмотреть следующее:

Если по какой-то причине вы предпочитаете сохранять файл JSON в другом каталоге, просто убедитесь, что вы указали полный путь к нему.

Это все, что касается сеанса аутентификации и авторизации.

2.3. Скрипт приложения

То, что я называю «скриптом приложения», - это то, что вы делаете со своими данными в Google Таблицах.

Вот простой пример, чтобы мы могли проверить, можете ли вы одновременно импортировать данные в Google Таблицы и читать из них данные:

Проверка:

Теперь вы готовы продолжать использовать Python при управлении онлайн-контентом в Google Таблицах.