Единственное, что я очень растерялся, - это определение правильной передачи учетных данных API в Scrapy Cloud и Scrapinghub для отправки проанализированных элементов в Google Cloud. В настоящее время я храню свои скрипты на Github и автоматически обновляю их до Scrapy Cloud. Это сделано для того, чтобы упростить обновление моих проектов, а также чтобы другие могли видеть прогресс моих проектов.
Тогда возникает вопрос о том, как правильно предоставить учетные данные API для проверки данных Scrapy для Google. Я не могу публично отображать учетные данные (ОЧЕНЬ плохая идея, которую я узнал). И я не верю, что смогу как вручную загрузить файл JSON в Scrapy Cloud, так и сохранить свой проект в Github. Я мог хранить свои проекты только на Scrapy, но это ограничивает сотрудничество в проекте.
Есть ли потенциальный обходной путь для этого? Кто-нибудь смог решить эту проблему?
Заранее спасибо!
Edit:
После прочтения неясной документации Google я смог решить эту проблему с помощью начальной справки, приведенной ниже. Процесс выглядит так:
- Создание набора учетных данных учетной записи службы в пользовательском интерфейсе Google Cloud
- Зайдите в Scrapinghub UI и создайте настройки в пауке для каждого
пункт в полномочиях.
- Используйте функцию "settings.get", предоставляемую Scrapy, чтобы вытащить те
учетные данные из вашего пользовательского интерфейса Scrapinghub.
- Создание объекта Credentials из модуля OAuth2.
- Используйте объект Credentials в качестве учетных данных для Pub / Sub PublisherClient.
Ссылка Github на то, как я решил проблему, находится здесь:
https://github.com/cmattheson6/bill_votes/blob/master/senate_votes/pipelines.py