如何将URL下载为文件?


24

网站URL通过将它们嵌入为Shockwave文件来“隐藏”了某些MP3 文件,如下所示。

<span class="caption"><!-- Odeo player --><embed src="http://odeo.com/flash/audio_player_tiny_gray.swf"quality="high" name="audio_player_tiny_gray" align="middle" allowScriptAccess="always" wmode="transparent" type="application/x-shockwave-flash" flashvars="valid_sample_rate=true external_url=http://podcast.cbc.ca/mp3/sundayeditionstream_20081125_9524.mp3" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed></span>

如何下载文件进行离线收听?

我发现了两种方法:

1.堆栈溢出方法

仅使用链接创建一个新的本地HTML文件,例如:

<a href="http://podcast.cbc.ca/mp3/sundayeditionstream_20081125_9524.mp3">Sunday Edition 25Nov2008</a>

在浏览器中打开文件,右键单击链接,然后单击文件>将链接另存为。

2.超级用户方法

安装Firefox插件Iget。(请确保为您的Firefox版本使用正确的版本。)

工具>下载>在字段中输入URL。

还有其他方法吗?


3
您可以跳过创建本地文件的过程,而只需在地址栏中输入“ podcast.cbc.ca/mp3/sundayeditionstream_20081125_9524.mp3 ”。
hyperslug

2
只有在您没有任何活动的多媒体插件(VLC,WMP等)的情况下,这才起作用。
Ehtyar

在野生动物园中,单击链接时按住选项。
09年

标题问题不应该读为“将文件下载为URL或给定URL吗?”。
西蒙(Simon)

如果我对上述标题查询有意义吗?
西蒙(Simon)

Answers:


12

在Linux上,在命令行上使用'wget':

wget http://podcast.cbc.ca/mp3/sundayeditionstream_20081125_9524.mp3

如果要在Windows上使用类似的工具,则可以通过Cygwin安装wget 或使用GNU Win32端口之一

在Mac OS X上,有cURL,它似乎具有Windows构建。


4
Mac wget默认情况下未安装。它确实有curl
Telemachus,2009年

我选择此作为最正确的答案,因为它可解决多个操作系统。
米歇尔

我勒个去??!我不会在Linux / Mac上用Google搜索
Nils

我在下面的Peter Morgensen的评论中重复此操作:还有一个用于Windows的独立wget(不需要Cygwin)-因此可以从BAT文件中使用wget。直接下载的网址是:users.ugent.be/~bpuype/wget/wget.exe
Vincent Vancalbergh 2012年

2
@VincentVancalbergh太好了,我就去找那个林...好吧。
罗布

14

3.命令行方法

下载/安装/构建wget或类似版本,然后从命令行下载:

wget http://some/url

9

我为此使用DownThemAll。您可以复制链接,打开管理器窗口,然后选择“添加URL”(假设正常运行时它不会拾取链接)。



6

这是一种无需离开浏览器即可动态创建下载页面的方法。

  1. 导航至网页(我猜是http://www.cbc.ca/thesundayedition/?)。
  2. 在您的地址栏中输入以下JavaScript:

javascript:document.documentElement.innerHTML.match(/external_url=([^\"]*\.mp3)\"/);document.write('<'+'a href="'+RegExp.$1+'">download<'+'/a>')


4

这个网站怎么样:www.downloadurlfile.com?它会创建指向URL的可下载链接。


我只是尝试过,如果失败。显然,解析非ASCII或其他字符有问题。大概是空格字符。愚蠢的浏览器在复制URL时会将编码的char变为其实际char值,因此我的URL中有空格。
DavidBalažic

3

使用Firefox时,您不需要任何附加组件。只需转到菜单工具»页面信息(或按Control / Command-I)并选择媒体标签。在这里,您将看到页面中嵌入的所有媒体(图像,视频,音频等),包括“另存为...”按钮


1
我认为问题的意图有所不同-如果您刚开始使用URL怎么办?
德里克·莫里森

@Derek,“媒体”选项卡显示了正在查看的页面中嵌入的所有URL。只需一个页面URL,而不是所有嵌入的URL即可看到该列表。
Arjan 2012年

2

Firefox 10.0.2仍然无法直接下载URL。

原始的问号优先方法(创建包含的HTML文件<a href="...">link</a>,在Firefox中打开,右键单击链接,另存为)可以用一些JavaScript进行优化,如下所示:

<script type="text/javascript">
var copylink = function(){document.getElementById("thelink").href = document.getElementById("theurl").value}
</script>
<input id="theurl" type="text"/>
<button type="button" onclick="copylink()">Update Link</button>
<a id="thelink" href="">Download Link</a>

这个小小的HTML文件可以收藏。因此,新流程将是:

  • 从收藏夹打开此HTML
  • 将粘贴URL复制到文本框中
  • 点击“更新链接”
  • 右键单击“下载链接”,另存为

(或者只是将其复制到jsFiddle中并在其中使用,例如这样


1

还有很多剪贴板监视下载应用程序,如果您喜欢将文件复制到剪贴板,则会开始下载文件。我过去曾经使用过FreeDownloadManager


1

另一种命令行方法是Curl也可以从文件读取URL。或者,您可以编写一个更高级别的脚本来获取原始页面,并使用诸如Perl,Python,Ruby,甚至JScript或ZSH之类的方法解析URL以单独获取


1

使用Safari,您需要做的就是打开活动窗口,然后在文件列表中单击文件。然后应该开始下载文件。

如果媒体在新窗口中打开,并且菜单文件 -> 另存为被禁用,那么我在Mac OS X上使用以下内容。

curl -o sundayEdition.mp3 http://podcast.cbc.ca/mp3/sundayeditionstream_20081125_9524.mp3

0

如果我知道我不会通过4个连接使服务器过载并且我希望它更快,那么我总是在linux或axel上使用wget应用程序。两者都可以在Cygwin的Windows上使用。如果它位于我经常抓取的网站上,请创建一个脚本来提取我的URL并运行类似的脚本。


1
还有一个用于Windows的独立wget(不需要Cygwin)-因此可以从BAT文件中使用wget。直接下载的网址是:users.ugent.be/~bpuype/wget/wget.exe
Peter Mortensen

@PeterMortensen-似乎该链接wget不再有效。我在2015年3 月3日在Wayback上找到了它:web.archive.org/web/20150303131028/http://users.ugent.be/…。Wayback上有该页面的更多近期捕获,但它们都显示已捕获“ 404文件未找到”页面。上面链接页面上的Wget.exe是2010年2月18日发布的1.11.4版。此wget似乎是GNU wget的端口(或可能是镜像)。也许可以在这里找到更新的版本:gnu.org/software/wget/wget.html
Kevin Fegan

0

对于Safari,可以通过将URL粘贴到下载窗口中来实现。


0

如果您的浏览器不支持通过直接URL(例如Safari)开始下载,则只需将URL复制到地址栏中,然后转到文件 > 另存为


不,正如Ehtyar指出的那样,这些插件会自动开始播放mp3,而没有明显的方法来保存文件。
米歇尔

它将开始播放歌曲,但是您应该能够从文件菜单中选择另存为。我当然可以。
乔什·亨特

不,另存为灰色。但是,您只需按住选项,选择地址栏,然后按Enter键即可下载而不是播放。
09年


0

您可以使用Xidel自动执行此过程:

Xidel是使用CSS,XPath 3.0,XQuery 3.0,JSONiq或模式模板从HTML / XML页面或JSON-API 下载提取数据的命令行工具。它还可以创建新的或转换的XML / HTML / JSON文档。

Xidel是xmllintjqcurl/ wget所有包裹在其中。它可能不具有其他功能所具有的每一个功能,但是非常接近。

提取网址:

xidel -s "http://yoursite/" -e "//embed/substring-after(@flashvars,'external_url=')"
http://podcast.cbc.ca/mp3/sundayeditionstream_20081125_9524.mp3

要么

xidel -s "http://yoursite/" -e "//embed/extract(@flashvars,'http.+')"
http://podcast.cbc.ca/mp3/sundayeditionstream_20081125_9524.mp3

下载网址:

xidel -s "http://yoursite/" -f "//embed/extract(@flashvars,'http.+')" --download .

Ps这些查询使用Windows引用。如果您使用的是Linux,请务必交换"'

xidel -s "http://yoursite/" -f '//embed/extract(@flashvars,"http.+")' --download .

-1

将URL复制并粘贴到Firefox和voila中。立即下载。迄今为止最简单的方法; )

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.