2011-04-11 790 views
8

python可以关闭windows应用程序吗?我知道如何启动一个应用程序,但现在我需要知道如何关闭它。如何使用python关闭程序?

+0

你的意思是什么样的应用?一个python应用程序?外部? – Stedy 2011-04-11 18:13:53

+0

@Stedy Firefox,我使用python每2小时打开一个网页,我需要在5分钟后关闭该页面。 – acrs 2011-04-11 18:18:44

+0

@Stedy外部一个 – acrs 2011-04-11 18:34:16

回答

9
# I have used os comands for a while 
# this program will try to close a firefox window every ten secounds 

import os 
import time 

# creating a forever loop 
while 1 : 
    os.system("TASKKILL /F /IM firefox.exe") 
    time.sleep(10) 
+0

这工作,但我得到__Access denied__。我正在使用Windows。 – Nabin 2017-06-15 14:30:48

5

如果您使用的是Popen,您应该可以使用send_signal(SIGTERM)terminate()终止应用程序。

See docs here.

1

在Windows中,你可以使用taskkillsubprocess.call:与psutil(当然,对于Linux

subprocess.call(["taskkill","/K","/IM","firefox.exe"]) 

清洁/更便携的解决方案你必须丢掉.exe部分使用.startwith("firefox")

import psutil,os 
for pid in (process.pid for process in psutil.process_iter() if process.name()=="firefox.exe"): 
    os.kill(pid) 

,将杀死命名为firefox.exe所有进程

编辑:os.kill(pid)是 “大材小用”。 processkill()方法,所以:

for process in (process for process in psutil.process_iter() if process.name()=="firefox.exe"): 
    process.kill()