如何以可恢复的方式下载Xcode或其他开发工具

14

我的网络连接不稳定,我需要下载支持断点续传的软件。我尝试使用wget:

  1. 登录https://developer.apple.com/account
  2. 然后进入这里https://developer.apple.com/download/more
  3. 复制Xcode 8的下载链接,链接为http://adcdownload.apple.com/Developer_Tools/Xcode_8/Xcode_8.xip
  4. 我尝试执行命令$ wget http://adcdownload.apple.com/Developer_Tools/Xcode_8/Xcode_8.xip但在终端上只显示了以下信息:

    --2016-09-21 15:13:17-- http://adcdownload.apple.com/Developer_Tools/Xcode_8/Xcode_8.xip Resolving adcdownload.apple.com... 203.177.38.83, 203.177.38.120 Connecting to adcdownload.apple.com|203.177.38.83|:80... connected. HTTP request sent, awaiting response... 302 Moved Temporarily Location: http://developer.apple.com/unauthorized/ [following] URL transformed to HTTPS due to an HSTS policy --2016-09-21 15:13:17-- https://developer.apple.com/unauthorized/ Resolving developer.apple.com... 17.146.1.15 Connecting to developer.apple.com|17.146.1.15|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 2070 (2.0K) [text/html]

保存到: ‘Xcode_8.xip’

Xcode_8.xip 100%[==================================>] 2.02K --.-KB/s in 0s

2016年09月21日15时13分18秒(85.8 MB/秒) - 已保存‘Xcode_8.xip’ [2070/2070]


注:该段内容是关于在命令行中下载并保存名为“Xcode_8.xip”的文件的指令及其执行结果。其中,“Saving to”表示保存路径,“100% [...] in 0s”表示下载过程中的进度,而最后一行显示了下载速度和已保存文件的大小。

我希望它可以恢复下载,因为我的网络连接不稳定。 - mownier
是的,您可以使用Safari浏览器下载Xcode 8....!!! - Kirit Modi
是的,我知道。但我想使用wget。 - mownier
Mownier,你找到用 wget 下载 Xcode 的方法了吗? - subzero
3
是的,我做了。首先登录您的开发者帐户并复制下载链接。然后使用已存储的 cookie 来验证访问下载链接。最后,使用 wget 命令并带上 cookie 标志参数。 - mownier
@mownier添加了答案以解释细节,并更新了问题,使其适用于所有类型的下载。如果您喜欢,请接受它。 - dannysood
3个回答

11

苹果开发者帐户下载会使用浏览器 cookie 进行跟踪以检查其有效性,但在较慢的互联网连接下,下载经常会出现问题并且很容易失败。解决方法是使用 wget,但默认情况下会失败,因为缺少这些 cookie。解决方案是从浏览器导出 cookie,然后与 wget 一起使用,操作如下。

例如,从开发者帐户下载 XCode 9 beta,请复制 XCode 9 下载链接,并使用 wget 如下。

wget --load-cookies=cookies.txt -c https://developer.apple.com/services-account/download?path=/Developer_Tools/Xcode_9_beta_6/Xcode_9_beta_6.xip

这个命令会在运行的同一个目录下开始下载,如果因为网络连接不稳定而取消或失败,只需再次在之前的同一目录中运行相同的命令,它应该可以恢复并继续下载。

有很多不同的方法可以从浏览器中导出Cookie。 我使用Chrome浏览器和cookies.txt是一个不错的选择。我无论如何不认可此产品,不同浏览器中的许多其他解决方案也应该同样有效。 快速搜索应该有所帮助。 注意:由于某种原因,cookies.txt仅在我仅导出开发者.apple.com网站的Cookie时才起作用,如果我导出浏览器中的所有Cookie,则无效。


1
使用Safari下载文件时,如果你的连接中断,可以让下载在连接恢复并点击下载旁边的橙色“继续下载”图标后正确地恢复。我刚刚用 Safari 11 进行了测试以确保它的可靠性,但我已经使用 Safari 的能力从 Apple Developer 恢复下载大约12年了。

Safari在MacOS High Sierra中不再自动“恢复”了。 - pensebien

1
我只需翻译,不会回答问题。
我能够在18分钟内下载Xcode xip文件,而我的网络速度需要2-3小时才能完成,这是通过遵循这篇博客link(作者署名)实现的。此外,在重新连接到互联网后,它会自动恢复下载。为了简化,我列出了步骤。
  1. 链接中提到的脚本保存在一个文件中(文件名为filename.rb)
  2. 通过终端运行脚本(ruby filename.rb)
  3. 从Chrome获取Cookie
    -打开https://developer.apple.com/download/more/
    -打开开发者工具 -> Cookies -> ADCDownloadAUTH
    -复制此Cookie并将其传递给输入(当脚本要求时)和URL URL:https://download.developer.apple.com/Developer_Tools/Xcode_10.2/Xcode_10.2.xip

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接