Python:使用os.system调用多个wget时会卡在每次调用之间

0 投票
1 回答
1282 浏览
提问于 2025-04-18 11:10

我有以下代码:

 #!/usr/bin/env python
 import os
 os.system("wget -directory-prefix=myDir/1 URL1")
 os.system("wget -directory-prefix=myDir/2 URL2")
 os.system("wget -directory-prefix=myDir/3 URL3")

在每次调用之间,脚本会“卡住”,当我按下 ctrl-c 时,脚本又继续运行。有没有什么办法可以帮我解决这个问题?

编辑:我现在完全修改了我的问题。

1 个回答

3

Python正在等待你的文件下载,因为os.system()这个方法是同步的,也就是说它会一直等到文件下载完成才继续执行后面的代码。如果你在脚本中不需要立即使用这些文件,可以用subprocess.Popen()这个方法来异步下载,也就是可以一边下载文件一边继续执行其他代码。

想了解更多信息,可以查看这篇文章 如何在Python中异步运行外部命令?

撰写回答