windows平台定时杀掉Chrome浏览器

在 Windows 系统上,你可以使用 Python 脚本配合系统的计划任务功能来实现每天晚上 9 点自动结束谷歌浏览器的进程。以下是具体步骤:


1. 编写 Python 脚本

编写一个脚本来查找并结束 Chrome 的进程:
这个是kill 线程

import os
import signal
import psutil

def kill_chrome():
    for process in psutil.process_iter(attrs=['pid', 'name']):
        if process.info['name'] and 'chrome' in process.info['name'].lower():
            try:
                os.kill(process.info['pid'], signal.SIGTERM)
                print(f"Killed process: {process.info['name']} (PID: {process.info['pid']})")
            except Exception as e:
                print(f"Error killing process {process.info['name']}: {e}")

if __name__ == "__main__":
    kill_chrome()

这个脚本是kill 父进程

import os
import signal
import psutil

def kill_chrome_main_process():
    for process in psutil.process_iter(attrs=['pid', 'name', 'ppid']):
        # 找到所有名为 "chrome" 的进程
        if process.info['name'] and 'chrome' in process.info['name'].lower():
            # 获取当前进程的父进程 ID (PPID)
            parent = psutil.Process(process.info['ppid'])
            # 判断是否是主进程:主进程通常没有父进程是 "chrome"
            if 'chrome' not in parent.name().lower():
                try:
                    # 终止主进程
                    os.kill(process.info['pid'], signal.SIGTERM)
                    print(f"Killed main Chrome process: {process.info['name']} (PID: {process.info['pid']})")
                except Exception as e:
                    print(f"Error killing process {process.info['name']} (PID: {process.info['pid']}): {e}")

if __name__ == "__main__":
    kill_chrome_main_process()

注意:脚本依赖于 psutil 库。安装方法:

pip install psutil

2. 创建计划任务

利用 Windows 的计划任务功能,设定脚本每天晚上 9 点执行:

  1. 打开 任务计划程序(搜索“任务计划程序”并打开)。
  2. 在右侧选择 创建基本任务
  3. 按以下步骤操作:
    • 名称:输入任务名称,比如“Kill Chrome Task”。
    • 触发器:选择“每天”,并设置开始时间为 21:00
    • 操作:选择“启动程序”,然后输入 Python 的可执行文件路径(比如 python.exe),并在“添加参数”中输入脚本路径,例如:
      C:\path\to\kill_chrome.py
      
    • 完成:检查并保存任务。
  4. 确保任务以“最高权限运行”,避免因权限问题导致无法结束进程。

3. 测试脚本和任务

运行脚本,确保能正常结束 Chrome 进程。随后,通过任务计划程序的“运行”功能测试任务能否自动执行。


额外建议

  • 日志记录:将脚本输出写入日志文件,方便排查问题:
    with open("kill_chrome.log", "a") as log_file:
        log_file.write(f"Killed process: {process.info['name']} (PID: {process.info['pid']})\n")
    
  • 权限问题:如计划任务未能执行,检查任务是否以管理员权限运行。

你可能感兴趣的:(python,windows,chrome,python)