Экспорт данных из Google+
Google+ закрывается. Самое время подумать о том, куда деть все свои сообщения.
Это перевод руководства Google+ export / migration tutorial
Важно: описываемый в статье инструмент в настоящее время использует API Google+ , который прекратит работу 7 марта 2019 года, поэтому рекомендуется перенести ваши данные до этого срока.
https://developers.google.com/+/api-shutdown Google объявил, что с начала марта 2019 года люди смогут загружать через Google Takeout дополнительную информацию из общедоступных сообществ, включая автора, тело и фотографии для каждого сообщения в Google+. Описываемый инструмент будет обновлен соответствующим образом.
Цель
Эти рекомендации помогут вам получить данные из вашего сообщества Google+ (записи, комментарии, +1), импортировать их в базу данных Firebase Realtime и отображать их с помощью Firebase Hosting.
Существует несколько ресурсов, созданных данным способом:
- https://apps-script-community-archive.firebaseapp.com , основанный на контенте сообщества https://plus.google.com/communities/102471985047225101769
- https://drive-and-docs-com.firebaseapp.com/ сообщения сообществ Google Документы и Диск (https://plus.google.com/communities/110105258652966548522 ) и Google Apps Script. Russian (https://plus.google.com/communities/103356854721490738172 )
- https://gplusgsuite.firebaseapp.com/ сообщения сообщества G Suite. Russian (Google Apps) (https://plus.google.com/communities/110878650918085680190 )
- https://yuriy-hlopko.firebaseapp.com/ лента Yuriy Hlopko plus.google.com/+Yuriy_Hlopko
- https://gplusastro.firebaseapp.com/ лента Александры Барышевой plus.google.com/+АлександраБарышева
- https://it-for-teacher.firebaseapp.com/ лента Аллы Леонидовны Сотниковой
Требуемое время
- Установка: Примерно 15 минут.
- Время выполнения: От часа до нескольких дней в зависимости от количества постов.
Дополнительные требования
Необходимо иметь Google аккаунт, который имеет доступ к экспортируемому сообществу. К сожалению, этот инструмент не работает с частным контентом G+ / частными сообществами. Но вы можете экспортировать все данные из любого публичного сообщества.
Это все, что нужно! Нет необходимости в предоставлении банковской карты (все используемые сервисы бесплатны или имеют бесплатную квоту), и вам не нужно ничего устанавливать на свой компьютер.
Шаги
1. Создание нового проекта Firebase
Во-первых, вам необходимо создать новый Firebase проект для импорта контента сообщества.
- Перейдите по ссылке https://console.firebase.google.com
- Нажмите “Add project”
- Назовите его как хотите (вы можете оставить все по умолчанию)
2. Используйте Google Apps Script для экспорта вашего сообщества в Firebase
2.1. Веб-приложение
Откройте наше веб-приложение Apps Script
2.2. Основные настройки
Замените значение поля “Export name” на название сайта, которое вы хотите.
2.3. Поисковые запросы для нужных сообщений
Поисковый запрос по умолчанию, используемый в веб-приложении, извлекает ваши собственные сообщения (сообщения, которые вы можете видеть в своем профиле G +, за исключением сообщений, опубликованных в сообществах).
В официальной документации G+ вы найдете все поисковые операторы, которые вы можете использовать.
Чтобы экспортировать все сообщения из сообщества, вам необходимо скопировать идентификатор сообщества в Google+ (длинная строка цифр в его URL). В этом примере идентификатор сообщества - “117193953428311185494”.
В поле G + Search Query введите “community:” и идентификатор сообщества: “community: 117193953428311185494”.
Нажмите “Проверить поисковый запрос в G+”, чтобы узнать, ссылается ли ваш запрос на сообщения/сообщество, которые вы хотите получить.
2.4. Добавление идентификатора проекта Firebase
Выберите свой проект Firebase. (Если вы ранее не использовали Firebase, вы должны увидеть только один проект, созданный на шаге 1 этого руководства).
Примечание. Если вы видите текстовое поле вместо выпадающего списка существующих проектов, это означает, что мы не смогли получить ваш проект Firebase. Пожалуйста, следуйте этой процедуре, чтобы получить ваш идентификатор проекта Firebase. Это полезно, если вы не видите свой проект в веб-приложении Apps Script или в Glitch. Это обычно происходит для недавно созданных проектов.
- Откройте свой проект Firebase через https://console.firebase.google.com
- Нажмите на колесо настройки, затем на “Project settings” и скопируйте идентификатор проекта.
2.5. Экспорт
Нажмите кнопку “EXPORT”. Вы должны увидеть подтверждение, что миграция началась. Затем вы можете нажать на ссылку “use Glitch ” в окне подтверждения и перейти к шагу 3.
Примечание. Для импорта всех сообщений и комментариев может потребоваться несколько часов. Но самое замечательное в том, что вам не нужно оставлять компьютер открытым (или вкладку приложения в веб-браузере), поскольку все будет работать на серверах Google. Вы также можете перейти к шагу 3 этих рекомендаций до завершения миграции. Этот процесс также будет копировать изображения, связанные с вашими сообщениями в Firebase (см. Об изображениях).
После завершения миграции вы получите уведомление по электронной почте:
3. Использование хостинга Firebase для отображения содержимого вашей базы данных
Теперь, когда контент вашего сообщества импортируется в Firebase, мы можем использовать Firebase Hosting для создания веб-приложения и отображения этого контента. Существует несколько способов развернуть веб-приложение с помощью Firebase Hosting. Здесь мы используем Glitch, что позволит избежать необходимости устанавливать что-либо на ваш компьютер.
3.1. Glitch
В окне подтверждения на шаге 2.5 нажмите ссылку “use Glitch ”.
3.2. firebase.json
Должна открыться новая вкладка, и вы должны увидеть исходный код веб-приложения. Нажмите “firebase.json” в списке файлов на левой боковой панели.
3.3. Деплой
Затем вы должны увидеть кнопку “Deploy to Firebase” и нажать ее
Примите разрешения.
3.4. Просмотр сайта
Когда анимированный индикатор исчезает на кнопке “Deploy to Firebase”, пора нажать кнопку “View Firebase App”, чтобы отобразить новое веб-приложение, содержащее последние сообщения из вашего сообщества (если вы его не видите, подождите около 5 минут, чтобы первая партия миграции завершилась, и перезагрузите страницу).
Двигайтесь дальше
Активирование аутентификации пользователя
С помощью аутентификации пользователя все существующие участники вашего сообщества смогут войти в ваше приложение Firebase и повторно использовать свою идентификацию G+. Например, все сообщения с «+1» будут отображаться правильно.
- Перейдите по адресу https://console.firebase.google.com/
- Откройте проект Firebase
- Откройте секцию Authentication и нажмите кнопку “Set up sign-in method”
- Выберите Google среди доступных провайдеров
- Переключите тумблер в состояние Enable для этого провайдера и сохраните
- Вот и все. Теперь вернитесь в свое веб-приложение и нажмите кнопку входа в правом верхнем углу для проверки аутентификации.
Включение полнотекстового поиска
Firebase по умолчанию не поддерживает полнотекстовый поиск, поэтому для его добавления потребуется несколько дополнительных шагов. Вот живой пример того, как это работает: https://romainvialard-public.firebaseapp.com/
- Нажмите на следующую ссылку (она автоматически создаст копию нужного проекта Glitch): https://glitch.com/edit/#!/remix/gplus-exporter-with-full-text-search
- Нажмите кнопку “Tools” в левом нижнем углу экрана и нажмите “Console”. Откроется консоль, связанная с проектом Glitch, в новой вкладке.
- Вам нужно будет ввести 3 команды в этой консоли, чтобы развернуть веб-приложение с поддержкой полнотекстового поиска. Сначала введите
firebase login --no-localhost
и нажмите на ссылку, отображаемую в консоли, чтобы пройти аутентификацию в Firebase. - Затем введите
firebase use project-id
, гдеproject-id
- это идентификатор вашего проекта Firebase, который мы получили ранее . - И, наконец,
firebase deploy
Это все. Теперь у вас должно быть поле полнотекстового поиска, доступное на вашем сайте экспорта Google+.
Примечание. Выполнение последней команды может занять 1 минуту. И в зависимости от размера вашего экспорта G+ (количества экспортированных вами постов) вам может потребоваться активировать биллинг в вашем проекте Firebase, чтобы ускорить ваши поисковые запросы.
Об изображениях
Изображения, связанные с сообщениями, также будут удалены с серверов Google. Таким образом, они должны храниться в другом месте. Этот инструмент экспортирует их в Firebase Storage. Если вы выполнили шаг 2 этого руководства, вы должны увидеть папку, содержащую изображение для каждого экспортируемого поста.
Эти изображения используются и отображаются в веб-приложении, настроенном на шаге 3 . Таким образом, изображения будут оставаться видимыми при экспорте даже после удаления исходных изображений Google.
Если вы ничего не видите в разделе “Storage” вашего проекта Firebase, повторите шаги 2 и 3 этого руководства. Экспорт изображений работает, только если вы выполнили шаг 2 после 10.02.2019.
Firebase позволяет хранить до 5 ГБ изображений бесплатно.
Обратите внимание, что экспорт всех изображений может занять некоторое время. Инструмент сначала экспортирует все содержимое публикации, кроме изображений, а затем извлечет все изображения. В конце вы получите уведомление по электронной почте.
Обратите внимание, что вы также можете получать уведомления об ошибках из Apps Script по электронной почте. Обычно указываются ошибки “Exceeded memory limit” и/или “Service using too much computer time for one day”.
Вы можете игнорировать эти уведомления. Изображения будут импортированы правильно.
Поддержка
Получить помощь
Если у вас есть вопросы или вам нужна помощь, вы можете связаться с автором по адресу romain.vialard@gmail.com . Вы также можете поднять проблему на GitHub: https://github.com/RomainVialard/Google-Plus-Community-Migrator/issues
Получить обновления
Есть надежда, что этот проект будет часто обновляться. Если вы хотите отправить последнее обновление в ваше веб-приложение, просто выполните шаг 3 этого руководства еще раз (чтобы создать новую копию проекта Glitch и развернуть ее).
Перед этим вы можете проверить на GitHub, когда было последнее обновление, и что было изменено: https://github.com/RomainVialard/Google-Plus-Community-Migrator/commits/master
Внесите вклад в проект
Это все еще в стадии разработки. Большинство функций G+ по-прежнему отсутствуют. Если вы разработчик, не стесняйтесь вносить свой вклад, либо улучшив код Google Apps Script для извлечения данных из G+, либо улучшив исходный код веб-приложения. Оба доступны в одном репозитории GitHub .
Вы также можете помочь, сообщая об этом проекте на G+ и в других местах, предлагая улучшения этой документации и добавляя запросы функций или сообщая об ошибках на GitHub .