Проверьте, если / когда публичный лист Google был изменен - PullRequest
0 голосов
/ 25 июня 2018

Я использую довольно простой скрипт на Python , чтобы загрузить Google Sheet (к которому у меня нет прав на запись) с библиотекой requests, и выписать файл csv, изменив заголовки того, что нужно моей CMS (Wordpress) для обновления некоторых данных.

Я не хочу реэкспортировать файл, если только он не был изменен в Google Sheet с момента последнего запуска скрипта.

  • Похоже, что использование Python Google API - это один из вариантов, но, возможно, больше, чем необходимо для этой задачи.

  • Пакет GSpread выглядит многообещающе, но атрибут worksheet.updated, который выглядит как в 2015 году, содержал бы строку даты и времени, кажется, в настоящее время не функционал

Это:

>>> import gspread
>>> from oauth2client.service_account import ServiceAccountCredentials
>>> scope = ['https://spreadsheets.google.com/feeds'] 
>>> creds = ServiceAccountCredentials.from_json_keyfile_name('client_secret.json', scope)
>>> client = gspread.authorize(creds)
>>> file_id = '1rYQ84SIKTFUOTl1xyFkHMNLt9CW3tOMFbOelOvVwx1k'
>>> url = "https://docs.google.com/spreadsheets/d/{0}".format(file_id)
>>> doc = client.open_by_url(url)
>>> sheet = doc.get_worksheet(0)
>>> sheet.updated
>>> 

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

Есть рекомендации?

...