wget 和 curl 总是导致文件损坏

wget and curl always result in corrupted file

我正在尝试使用 wget 下载文件,所以我这样做了:

wget 'url' -o 'path.file-extension'

每次下载成功,但文件损坏。还尝试使用 curl 下载,但结果是相同的损坏文件。 我该如何解决? (到目前为止,我在其他帖子上发现的都没有用)

编辑 2:我的 url 被暂停并多次重新打开,导致 html 下载 -> -o 生成 .mp3 -> 文件损坏。还解释了为什么它有时有效。

你可以试试加上--compression=none

wget 'url' -o 'path.file-extension'--compression=none

我的 url 被暂停并多次重新打开,导致 html 下载 -> -o 生成 .mp3 -> 文件损坏。还解释了为什么它有时有效。

编辑:无法接受作为答案...

使用 invoke-webrequest(别名 wget)从 sourceforge 下载文件会产生损坏的文件,如果 运行 的简单形式为:

Invoke-WebRequest -Uri https://sourceforge.net/projects/path/to/file -OutFile 'mydownloadedfile.ext'

修改为指定user agent好像靠谱

Invoke-WebRequest -Uri https://sourceforge.net/projects/path/to/file -OutFile 'mydownloadedfile.ext' -UserAgent [Microsoft.PowerShell.Commands.PSUserAgent]::Chrome

在将 Safari 指定为用户代理时,它也对我有用。它没有安装在我的 PC 上,因此用户代理似乎通过描述行为而不是软件来按预期工作。