#powershell #csv #google-sheets #download
#powershell #csv #google-sheets #Скачать
Вопрос:
Уже несколько месяцев я использую PowerShell
скрипт, который автоматически загружает мои Google Sheet
данные как CSV
. Что-то изменилось около недели назад — файл, возвращаемый скриптом, теперь является html, который направляет меня к моему Gmail
логину. Я не уверен, были ли мои учетные данные ранее кэшированы или что-то в этом роде, но я не смог решить эту проблему. Если я щелкну URL вручную, он успешно загрузится в формате CSV (как и ожидалось). Но мне не удалось обновить свой PowerShell
скрипт (или что-либо еще), чтобы снова автоматизировать процесс.
Мой PowerShell
скрипт:
$client = new-object System.Net.WebClient
$enddate = (Get-Date).tostring("yyyyMMdd")
$client.DownloadFile("https://docs.google.com/spreadsheets/d/XXXXXXXXXXXXX/export?format=csv"
,"C:Users<local_location>" $enddate "_File.csv")
Комментарии:
1. Понятия не имею, как это работало в первую очередь, tbh. Но одним из способов может быть использование Selenium (может использоваться с PowerShell) для автоматизации всего процесса, включая вход на сайт.
Ответ №1:
Если вы нажмете на ссылку вручную, скорее всего, в вашем браузере появятся некоторые файлы cookie от Google с токеном обновления. Попробуйте открыть ссылку экспорта в окне браузера инкогнито, и вы, скорее всего, увидите тот же HTML-код, который был получен Powershell. Если электронная таблица доступна всем, у кого есть ссылка, тогда сценарий Powershell должен работать. Если это не так, то сценарий PowerShell должен быть авторизован раньше.