我得到语法错误:
FileNotFoundError:[WinError 2]系统找不到指定的文件
运行以下代码时。
在我运行的Windows上找到一个很好的解决这个问题的方法有点困难,而UNIX我可以找到工作代码。
from subprocess import Popen, check_call
p1 = Popen('start http://stackoverflow.com/')
p2 = Popen('start http://www.google.com/')
p3 = Popen('start http://www.facebook.com/')
time.sleep(60)
for pid in [p1.pid,p2.pid,p3.pid]:
check_call(['taskkill', '/F', '/T', '/PID', str(pid)])
我希望代码打开页面60秒然后关闭它们。
我知道链接上有类似的主题:
,但首先是python 2,我使用子进程模块尝试了代码,它们与我使用的代码相同,但不起作用。
Windows可能会被URL中的斜杠抛出。我现在没有Windows机器,但你可以尝试引用网址吗?
如果你有这个工作会很好,但正确的python方法是使用webbrowser模块。像这样:
import webbrowser
url = "google.com"
webbrowser.open_new_tab(url)
关闭这些会更棘手,但我认为你的问题是重复的,几乎完全相同的代码,也适用于Windows。所以我认为你应该先在那里搜索你的答案。
更换
p1 = Popen('start http://stackoverflow.com')
同
p1 = Popen('start http://stackoverflow.com',shell=True)
确保命令通过shell执行。
如果传递单个字符串,则shell必须为True(参见下文),否则字符串必须简单地命名要执行的程序而不指定任何参数。