我想使用curl以下网址一次从以下页面下载文件:http :
//www.ime.usp.br/~coelho/mac0122-2013/ep2/esqueleto/
我尝试过curl http://www.ime.usp.br/~coelho/mac0122-2013/ep2/esqueleto/,它在终端中返回了一堆线,但是没有得到任何文件。
我想使用curl以下网址一次从以下页面下载文件:http :
//www.ime.usp.br/~coelho/mac0122-2013/ep2/esqueleto/
我尝试过curl http://www.ime.usp.br/~coelho/mac0122-2013/ep2/esqueleto/,它在终端中返回了一堆线,但是没有得到任何文件。
Answers:
使用wget代替。brew install wget如果已安装Homebrew或sudo port install wgetMacPorts ,则可以与它一起安装。
要从目录列表下载文件,请使用-r(递归),-np(不要跟随父目录的链接),-k并使下载的HTML或CSS中的链接指向本地文件(信誉@xaccrocheur)。
wget -r -np -k http://www.ime.usp.br/~coelho/mac0122-2013/ep2/esqueleto/
其他有用的选项:
-nd (无目录):将所有文件下载到当前目录-e robots.off:忽略robots.txt文件,请勿下载robots.txt文件-A png,jpg:仅接受扩展名为png或的文件jpg-m (镜子): -r --timestamping --level inf --no-remove-listing-nc,--no-clobber:如果文件存在,请跳过下载brew并port没有为我工作,安装了wget。我该怎么办?
-k并非始终有效。例如,如果您有两个链接指向要递归捕获的网页上的同一文件,则wget似乎只能转换第一个实例的链接,而不能转换第二个实例的链接。
curl只能读取单个网页文件,实际上,您得到的一串行是目录索引(如果转到该URL,您也可以在浏览器中看到该目录)。要使用curl和一些Unix工具魔术来获取文件,您可以使用类似
for file in $(curl -s http://www.ime.usp.br/~coelho/mac0122-2013/ep2/esqueleto/ |
grep href |
sed 's/.*href="//' |
sed 's/".*//' |
grep '^[a-zA-Z].*'); do
curl -s -O http://www.ime.usp.br/~coelho/mac0122-2013/ep2/esqueleto/$file
done
它将所有文件放入当前目录。
对于更详尽的需求(包括从具有文件夹/目录的站点获取一堆文件),wget(如已经在另一个答案中建议的那样)是更好的选择。
xmllint --html --xpath '//a/@href'比起可能是更好的解析器grep。
参考:http : //blog.incognitech.in/download-files-from-apache-server-listing-directory/
您可以使用以下命令:
wget --execute="robots = off" --mirror --convert-links --no-parent --wait=5 <website-url>
wget:用于发出CURL请求并将远程文件下载到我们本地计算机的简单命令。--execute="robots = off":在浏览网页时,这会忽略robots.txt文件。如果您没有获取所有文件,这将很有帮助。--mirror:此选项将基本上反映给定URL的目录结构。这是一个快捷方式,-N -r -l inf --no-remove-listing它意味着:
-N:除非本地更新,否则不要重新获取文件-r:指定递归下载-l inf:最大递归深度(inf或0表示无穷大)--no-remove-listing:不要删除“ .listing”文件--convert-links:使下载的HTML或CSS中的链接指向本地文件--no-parent:不要升至父目录--wait=5:两次检索之间要等待5秒钟。这样我们就不会破坏服务器。<website-url>:这是从中下载文件的网站网址。下载愉快:笑脸:
您可以使用适用于Windows / MacOS并可以通过Homebrew安装的httrack。
对于那些希望将应用程序与GUI一起使用的人,有便宜的Mac OS X共享软件DeepVacuum程序,该程序wget以用户友好的方式实现,并带有可以处理常用任务的预设列表。您还可以将自己的自定义配置另存为预设。

wget -r -np -k http://your.website.com/specific/directory。诀窍是使用-k转换链接(图像等)进行本地查看。