Про использование wget для скачивания данных NASA
Скачивание данных с одного из ресурсов earthdata.nasa.gov в программе wget удалось настроить не сразу из-за странной системы авторизации в этой группе сайтов.
Вместо того, чтобы тихо проверить пользователя на внешнем сервере авторизации и поставить его перед фактом, пользователя перенаправляют на сайт авторизации, потом куда-то ещё, и так далее. Эту цепочку перенаправлений веб-браузеры (Firefox, Chrome и т. п.) обрабатывают легко, а консольные веб-клиенты wget или cURL подтверждение авторизации теряют.
Настройка скачивания в программе wget описывается на следующих веб-страницах:
- Search and Download Methods — https://oceancolor.gsfc.nasa.gov/data/download_methods/
- How To Access Data With cURL And Wget — https://wiki.earthdata.nasa.gov/display/EL/How+To+Access+Data+With+cURL+And+Wget
- Troubleshooting wget — https://wiki.earthdata.nasa.gov/display/EL/Troubleshooting+wget
Для wget версии 1.20.1 (входит в Linux Debian версии 10 «Buster») командная строка имеет вид:
wget --auth-no-challenge=on --load-cookies cookies.dat --save-cookies cookies.dat --keep-session-cookies <URL>
В документации NASA предусмотрено размещение кук-файла в домашней директории
пользователя (~/.urs_cookies
), но целесообразнее — в текущей директории.
Создаётся файл командой touch cookies.dat
.
Пример поиска файла с использованием wget приведён на странице по первой ссылке.
Использование файла ~/.netrc
(описано на всех трёх страницах) —
обязательно! Указание логина и пароля в командной строке не сработает.
Перед скачиваением реальных данных рекомендуется убедиться в работоспособности схемы: скачать любой файл из примеров в документации и убедиться, что получены данные, а не веб-страница с требованием авторизации, сообщением о редиректе, и т. п. При неудаче, перед повторной попыткой, удалите и заново создайте кук-файл.
Автор: Георгий Мурый, страница создана 21 апреля 2020 года.