- Регистрация
- 23.10.2016
- Сообщения
- 250
- Благодарностей
- 71
- Баллы
- 28
Шаблон парсинга сайта с выгрузкой данных в Google Sheets с помощью API и Service Account
Иногда встречаются задачи, когда нам нужно иметь больше гибкости и возможностей чем предоставляют стандартные инструменты. В таком случае, увы, приходится прибегать к написанию *Своего кода*. Но для того, чтобы Вы не начинали с чистого листа, представляю вам шаблон в котором реализованы следующие вещи для работы с Google Sheets:
1) Создание новой таблицы;
2) Применение стилей к ячейкам таблицы;
2) Загрузка данных из таблицы;
3) Выгрузка данных в таблицу.
Основной для выполнения операций с Google Sheets в этом шаблоне есть библиотека Google.Apis.Sheets.v4.
Что конкретно делает этот шаблон?
Программа в шаблоне заходит на сайт https://ixbt.games/news, проходится по первым N страницам, и собирает следующую информацию про каждый пост:
- Дата публикации;
- Заголовок поста;
- Ссылка на пост.
После того как информация про посты собрана, она обрабатывается, разбивается по дням, когда были совершены публикации, и загружается в Google Sheets. Для каждого дня, когда были совершены публикации, автоматически создается свой лист в таблице.
Результат работы шаблона можно увидеть на рисунке, или же по ссылке тут https://docs.google.com/spreadsheets/d/1yJDqZeLWdjbFDXm0i-f9nCG-23cy0zheqGFlXuVwNXA/edit?usp=sharing
Настройка шаблона:
Для настройки шаблона нам нужно указать гугл таблицу в которую будет производится запись. Кроме этого, нужно указать путь к Json файлу про Service Account который будет использоваться для отправки запросов по API (инструкция где взять такой файл будет дальше). Чтобы это сделать нужно нажать на вкладку Директивы using и общий код. И заменить значения на 43 и 45 строке кода. К статье будет прикреплен Json файл который вы можете использовать тестирования шаблона.
Инструкция как вы можете создать свой Service Account и получить нужный Json файл: (спрятать в спойлер)
1) Зайти на сайт Google Cloud https://console.cloud.google.com/
2) После авторизации, в левом верхнем углу нажать кнопку *Select a project* и в открывшимся меню создать новый проект.
3) Переходим по адресу https://console.developers.google.com/apis/library/sheets.googleapis.com и активируем Google Sheets API для созданного проекта.
4) Далее создаем сервисный аккаунт, для этого переходим по этой ссылке https://console.cloud.google.com/iam-admin/serviceaccounts/create, заполняем поля своими значениями, и жмем кнопку Create And Continue.
5) Роль указываем Owner (или другую на ваше усмотрение) и жмем Continue. После жмем кнопку Done.
6) На следующей вкладке кликаем на имя созданного сервисного аккаунта.
7) Далее выбираем вкладку Keys, там жмем кнопку Add Key. В меню выбираем пункт Json и жмем Create. После этого ключ будет создан, а Json файл автоматически скачан на ваш компьютер.
Решение возможных проблем с библиотеками (спрятать в спойлер)
Следует убедиться, что у вас удачно подключились библиотеки нужные для работы программного кода. Для этого нужно открыть окно Ссылки из GAC и посмотреть, что ваш список библиотек такой же как на этом рисунке.
Если какой-то из библиотеки нет в вашем списке, их нужно добавить вручную. В этом шаблоне используются библиотеки, которые поставляются вместе с ZennoPoster, и они должны находится в папке с программой. Например, у вас нет библиотеки с именем Google.Apis.Sheets.v4, тогда вам нужно указать путь к файлу: C:\Program Files\ZennoLab\RU\ZennoPoster V7\7.7.5.0\Progs\Google.Apis.Sheets.v4.dll
Иногда встречаются задачи, когда нам нужно иметь больше гибкости и возможностей чем предоставляют стандартные инструменты. В таком случае, увы, приходится прибегать к написанию *Своего кода*. Но для того, чтобы Вы не начинали с чистого листа, представляю вам шаблон в котором реализованы следующие вещи для работы с Google Sheets:
1) Создание новой таблицы;
2) Применение стилей к ячейкам таблицы;
2) Загрузка данных из таблицы;
3) Выгрузка данных в таблицу.
Основной для выполнения операций с Google Sheets в этом шаблоне есть библиотека Google.Apis.Sheets.v4.
Что конкретно делает этот шаблон?
Программа в шаблоне заходит на сайт https://ixbt.games/news, проходится по первым N страницам, и собирает следующую информацию про каждый пост:
- Дата публикации;
- Заголовок поста;
- Ссылка на пост.
После того как информация про посты собрана, она обрабатывается, разбивается по дням, когда были совершены публикации, и загружается в Google Sheets. Для каждого дня, когда были совершены публикации, автоматически создается свой лист в таблице.
Результат работы шаблона можно увидеть на рисунке, или же по ссылке тут https://docs.google.com/spreadsheets/d/1yJDqZeLWdjbFDXm0i-f9nCG-23cy0zheqGFlXuVwNXA/edit?usp=sharing
Настройка шаблона:
Для настройки шаблона нам нужно указать гугл таблицу в которую будет производится запись. Кроме этого, нужно указать путь к Json файлу про Service Account который будет использоваться для отправки запросов по API (инструкция где взять такой файл будет дальше). Чтобы это сделать нужно нажать на вкладку Директивы using и общий код. И заменить значения на 43 и 45 строке кода. К статье будет прикреплен Json файл который вы можете использовать тестирования шаблона.
Инструкция как вы можете создать свой Service Account и получить нужный Json файл: (спрятать в спойлер)
1) Зайти на сайт Google Cloud https://console.cloud.google.com/
2) После авторизации, в левом верхнем углу нажать кнопку *Select a project* и в открывшимся меню создать новый проект.
3) Переходим по адресу https://console.developers.google.com/apis/library/sheets.googleapis.com и активируем Google Sheets API для созданного проекта.
4) Далее создаем сервисный аккаунт, для этого переходим по этой ссылке https://console.cloud.google.com/iam-admin/serviceaccounts/create, заполняем поля своими значениями, и жмем кнопку Create And Continue.
5) Роль указываем Owner (или другую на ваше усмотрение) и жмем Continue. После жмем кнопку Done.
6) На следующей вкладке кликаем на имя созданного сервисного аккаунта.
7) Далее выбираем вкладку Keys, там жмем кнопку Add Key. В меню выбираем пункт Json и жмем Create. После этого ключ будет создан, а Json файл автоматически скачан на ваш компьютер.
Решение возможных проблем с библиотеками (спрятать в спойлер)
Следует убедиться, что у вас удачно подключились библиотеки нужные для работы программного кода. Для этого нужно открыть окно Ссылки из GAC и посмотреть, что ваш список библиотек такой же как на этом рисунке.
Если какой-то из библиотеки нет в вашем списке, их нужно добавить вручную. В этом шаблоне используются библиотеки, которые поставляются вместе с ZennoPoster, и они должны находится в папке с программой. Например, у вас нет библиотеки с именем Google.Apis.Sheets.v4, тогда вам нужно указать путь к файлу: C:\Program Files\ZennoLab\RU\ZennoPoster V7\7.7.5.0\Progs\Google.Apis.Sheets.v4.dll
- Номер конкурса шаблонов
- Одиннадцатый конкурс шаблонов
Вложения
-
1,4 МБ Просмотры: 146
Для запуска проектов требуется программа ZennoPoster или ZennoDroid.
Это основное приложение, предназначенное для выполнения автоматизированных шаблонов действий (ботов).
Подробнее...
Для того чтобы запустить шаблон, откройте нужную программу. Нажмите кнопку «Добавить», и выберите файл проекта, который хотите запустить.
Подробнее о том, где и как выполняется проект.
Последнее редактирование модератором: