我正在尝试创建一个与 wget 命令执行相同操作的 Python 函数:
wget -c --read-timeout=5 --tries=0 "$URL"
-c
- 如果下载中断,则从上次中断的地方继续。
--read-timeout=5
- 如果超过 5 秒没有新数据传入,则放弃并重试。给定-c
这意味着它将从上次停止的地方再次尝试。
--tries=0
- 永远重试。
这三个参数一起使用会导致下载不会失败。
我想在我的 Python 脚本中复制这些功能,但我不知道从哪里开始......
还有一个不错的 Python 模块,名为wget https://pypi.python.org/pypi/wget这非常容易使用。请记住,该软件包自 2015 年以来尚未更新,并且尚未实现许多重要功能,因此最好使用其他方法。这完全取决于您的用例。对于简单的下载,这个模块就是ticket。如果您需要做更多事情,还有其他解决方案。
>>> import wget
>>> url = 'http://www.futurecrew.com/skaven/song_files/mp3/razorback.mp3'
>>> filename = wget.download(url)
100% [................................................] 3841532 / 3841532>
>> filename
'razorback.mp3'
Enjoy.
然而,如果wget
不起作用(我在处理某些 PDF 文件时遇到了问题),请尝试这个解决方案 https://stackoverflow.com/a/16696317/1224827.
Edit:您还可以使用out
参数使用自定义输出目录而不是当前工作目录。
>>> output_directory = <directory_name>
>>> filename = wget.download(url, out=output_directory)
>>> filename
'razorback.mp3'
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)