Как скачать файл, который находится за CGI запрос с помощью CLI?
Я хочу скачать mp3-файл с онлайн-курса. Но файл находится за перенаправлением CGI. URL-адрес: " http://openmedia.yale.edu/cgi-bin/open_yale/media_downloader.cgi?file=/courses/fall08/chem125/mp3/chem125_01_090308.mp3"
wget возвращает "файл недоступен для загрузки". Я старался curl -L
а также wget --trust-server-names
а также wget -content-disposition
,
1 ответ
Вам нужно будет немного больше понять, что делает CGI. Если я нажму на эту ссылку, от SuperUser, я получу то же сообщение. Проблема не в самом CLI, а в том, что CGI обнаруживает, что вы обращаетесь к файлу напрямую, и он был настроен для блокировки этого (я думаю, в любом случае). Попробуйте использовать wget --referer
возможность установить реферер. Если это не сработает, просто итерируйте постоянно, делая wget более "таким же", как ваш браузер, что означает добавление в пользовательский агент и так далее.
Примечание: я предполагаю, что этот файл не находится за какой-то системой, в которую вы должны войти. Если это так, вам, вероятно, нужно взглянуть на небольшой скрипт на python (или аналогичный), чтобы достичь этого, хотя есть некоторые инструменты, если скриптинг не является вашей суммой.
Примечание: то, что вы делаете, может быть не законным в зависимости от условий обслуживания сайта и лицензии, под которой распространяется файл.