相当于给定 wget 命令的 Python

2023-12-30

我正在尝试创建一个与 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(使用前将#替换为@)

相当于给定 wget 命令的 Python 的相关文章

随机推荐

  • 重新创建 Android 项目后如何合并 Git 存储库?

    我有一个 Android 应用程序 我们称之为 Foo 它有相当多的历史 从 Eclipse 开始 然后迁移到 Android Studio 它曾经具有以下遗留目录结构 Foo MyAndroidLibrary Foo MyAndroidL
  • .NET 6 Core Web 应用程序返回找不到网页

    我已经在这里和其他地方搜索过以找出问题所在 但找不到好的解决方案 我创建了一个针对 NET6 的新 NET Core Web 应用程序 我在没有身份验证且没有 Docker 支持的情况下创建了该项目 我希望新的应用程序能够使用默认登录页面开
  • 调用析构函数,然后调用构造函数(重置对象)

    我想重置一个对象 我可以按照下面的方式来做吗 anObject gt AnObject anObject new anObject AnObject edit this is not allowed anObject gt AnObject
  • 内容重叠div

    我遇到内容重叠的问题 当我尝试这段 HTML 代码时 content left 中的文本与我希望它包含的整个区域重叠 当我将高度更改为自动时 它并不能解决问题 内容向右重叠 底部被切断 wrapper height 1500px margi
  • 使用 Angular-CLI 安装第 3 方 jquery-ui

    我正在为我的 Angular2 项目使用 Angular CLI 在我的项目中我想使用jquery ui 我安装了 jquery ui npm install jquery jquery ui 我编辑了我的 angular cli buil
  • Android 存储访问框架在 asynctask 期间未授予持久权限

    我在这里设置了意图标志 public void createAlbum View view Intent intent new Intent intent setType image intent setAction Intent ACTI
  • 如何在 django 1.10 中使用“unaccent”进行全文搜索?

    我们正在开发一个项目并且我们正在使用Django 1 10a1 我们使用 Django 全文搜索和 PostgreSQL 但我们需要使用非重音符号 所以 我有这个代码 search Car query set Article objects
  • Python 尾随 L 问题

    我正在使用 Python 编写嵌入式系统中内存中特定位置 32 位地址 的一些操作脚本 当我将这些地址与字符串 整数和十六进制值相互转换时 似乎会出现尾随的 L 这可能是一个真正的痛苦 例如以下看似无害的代码将无法工作 int hex 42
  • 如何在 Jasmine 单元测试中使用 Sinon 模拟 jQuery 动画?

    我有一个 1 秒的 jQuery animate页面加载后 5 秒启动的操作 我在 Jasmine 单元测试代码中设置了一个 Sinon 计时器 并在 7 秒后进行测试 看看动画后属性是否符合预期 它无法正常工作 因此我在 Jasmine
  • 创建一个调用 jsf 方法的简单链接

    我正在创建一个注销链接 这是注销 bean 的代码 public void doLogout try FacesContext getCurrentInstance getExternalContext getSessionMap put
  • 在“输入”元素之前或之后生成CSS内容[重复]

    这个问题在这里已经有答案了 在 Firefox 3 和 Google Chrome 8 0 中 以下内容按预期工作 span Test span 但当元素为
  • Java 中的套接字和进程

    在Java中 最好的方法是打开一个持续监听的端口 并且在收到数据包时仍然发送 目前我对网络编程还不是特别精通 所以我在网上找到的教程并不是特别有帮助 将侦听套接字作为服务器套接字并在我用来向服务器发送数据的套接字的单独线程中运行它是否有意义
  • 从静态方法访问非静态成员变量

    我刚刚开始学习 Java 需要一些帮助 我知道我无法对静态方法进行非静态引用 但我需要帮助来解决它 我读到您可以通过创建对象的实例来访问非静态成员变量 但我不确定具体如何操作 这是代码中的一些内容 任何帮助或指示将不胜感激 package
  • 根据 xml 元素的值进行流量控制

    我有一个很长的 xml 数据文件 其中包含 500 多个项目 它的形式如下
  • 如何访问HTML5视频解码功能?

    HTML5 有
  • 为什么这个 LINQ 表达式会破坏我的循环和转换逻辑?

    背景 ArticleService是一个类 为前端层提供方法 方便与后端业务 它的两个基本职责是转换 ViewModel ArticleViewModel 到适当的模型 Article 在保存数据时 反之 在获取数据时将模型转换为 View
  • 从 .NET 中的 COM 对象包装器重定向 STDERR 输出

    我正在尝试在 NET 库中使用 ImageMagick COM 对象 ImageMagickObject 该库旨在从 IronRuby 中调用 但这并不是那么重要 我想采用这种方法 因为它适合我现有的调用 当前调用 ImageMagick
  • 带 D3 (v4) 直方图函数的胖尾意味着空箱

    我正在尝试充分利用 D3 直方图函数 但由于笨拙的肥尾数据分布而陷入困境 这data points下面的数组涉及多年来的国家人口密度 像香港这样人口密度高的城市是造成 肥尾 的原因 我想将数据分成八个单独的桶 我没有指定一个域 我假设直方图
  • 如何使用 NHibernate 模式生成更新数据库表模式?

    我试图弄清楚如何使用 NHibernate 配置和映射来更新表模式 而不是删除并重新创建它们 目前我正在使用NHibernate Tool hbm2ddl SchemaExportobj 使用 FluentNHibernate 生成 mys
  • 相当于给定 wget 命令的 Python

    我正在尝试创建一个与 wget 命令执行相同操作的 Python 函数 wget c read timeout 5 tries 0 URL c 如果下载中断 则从上次中断的地方继续 read timeout 5 如果超过 5 秒没有新数据传