You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用curl或wget下载需点击页面按钮的文件?

能用curl或wget实现下载,具体操作分两种情况:

先抓真实下载链接再下载

这类分享页面的下载按钮触发的是后台生成的临时链接,直接请求页面URL只能拿到HTML。你可以用浏览器开发者工具抓真实下载请求:

  1. 打开页面后按F12,切到「Network」标签,点击下载按钮,找到对应的请求(通常URL带/download后缀,请求方法可能是GET或POST)
  2. 记下这个请求的URL、请求头里的Cookie和Referer

然后用curl下载,示例命令:

# 先保存页面的Cookie到本地文件
curl -c cookies.txt "https://rec.ustc.edu.cn/share/031c0580-0366-11ed-bb15-47281881a56b"
# 再用Cookie和Referer请求真实下载链接,保存为target.zip
curl -L -b cookies.txt -e "https://rec.ustc.edu.cn/share/031c0580-0366-11ed-bb15-47281881a56b" -o target.zip "真实下载链接"

用wget的话,示例命令:

wget --load-cookies cookies.txt --referer="https://rec.ustc.edu.cn/share/031c0580-0366-11ed-bb15-47281881a56b" -O target.zip "真实下载链接"

自动处理会话和跳转(不用手动抓链接)

如果不想手动找下载链接,可以让wget模拟浏览器行为,自动处理会话:

wget --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) Chrome/114.0.0.0" \
--save-cookies cookies.txt --keep-session-cookies \
--referer="https://rec.ustc.edu.cn/share/031c0580-0366-11ed-bb15-47281881a56b" \
-O target.zip "https://rec.ustc.edu.cn/share/031c0580-0366-11ed-bb15-47281881a56b/download"

要是不确定/download接口是否正确,也可以先爬页面提取下载链接:

# 提取页面里的下载链接到文件
curl "https://rec.ustc.edu.cn/share/031c0580-0366-11ed-bb15-47281881a56b" | grep -o 'https://rec.ustc.edu.cn/[^"]*download[^"]*' > download_url.txt
# 用提取的链接下载
wget --load-cookies cookies.txt -O target.zip $(cat download_url.txt)

核心注意事项

  • Cookie必须带:这类系统靠Cookie验证会话,确保你是正常访问页面的用户
  • Referer要设置:部分服务器会检查请求来源,防止盗链
  • 如果下载请求是POST方法,得用curl -X POST带上表单参数(参数从浏览器Network面板的Form Data里复制)

内容的提问来源于stack exchange,提问作者Sadaf Shafi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 05:10:29