如何使用wget正确下载目标文件而非返回的HTML页面?
问题根因
路径中带/blob/的地址是Hugging Face模型仓库的文件预览网页地址,服务器对该路径返回的是供浏览器渲染展示的HTML页面,并非vocab.txt的原始文件内容。此前尝试的--max-redirect=2 --trust-server-names、wget -m等参数,仅适用于直链存在跳转、需要整站爬取的场景,由于请求的地址本身就不指向原始文件,无论怎么调整这类参数都无法拿到目标txt文件。
正确操作
把URL中的/blob/字段替换为/resolve/,这个路径才是Hugging Face官方提供的原始文件直链,直接执行下述命令即可下载到正确的vocab.txt:
wget https://huggingface.co/distilbert-base-uncased/resolve/main/vocab.txt
常用补充参数
- 下载大文件时建议加
-c参数开启断点续传,下载中断后重新执行同一条命令即可从断点位置继续传输,无需从头下载:
wget -c https://huggingface.co/distilbert-base-uncased/resolve/main/vocab.txt
- 如果需要自定义本地保存的文件名,可加
-O参数指定文件名,例如下载后保存为distilbert-vocab.txt:
wget -O distilbert-vocab.txt https://huggingface.co/distilbert-base-uncased/resolve/main/vocab.txt
内容的提问来源于stack exchange,提问作者user12690225
相关产品推荐
相关产品推荐

