我想从在线课程下载 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
选项设置 referer。如果这不起作用,只需不断迭代使 wget 与您的浏览器更加“相同”,即添加用户代理等等。
注意:我假设此文件不在您需要登录的某种系统后面。如果是,您可能需要查看一个小的 Python 脚本(或类似脚本)来实现这一点,尽管如果您不擅长编写脚本,也可以使用一些工具。
注意:根据网站的服务条款和文件分发的许可证,您所做的可能不合法。