首页 > 解决方案 > popen.kill 不关闭浏览器窗口

问题描述

在过去的几天里,我一直在尝试自动化拼合 PDF 的过程,而这个功能是我发现效果最好的功能。唯一的问题是没有读取 a.kill() 命令,导致函数完成后浏览器保持打开状态。保存过程完成后如何关闭浏览器窗口?

import time
import subprocess
import keyboard

def chrome():
    test = "test"
    name = "file:///C://Users//akcgo//Documents//CARB//ARBER//PDFS//Company A.pdf"
    a = subprocess.Popen("C://Program Files (x86)//Google//Chrome//Application//chrome.exe")
    time.sleep(1)
    keyboard.write(name)
    time.sleep(1)
    keyboard.press_and_release('enter')
    time.sleep(1)
    keyboard.press_and_release(['ctrl', 'p'])
    time.sleep(1)
    keyboard.press_and_release('enter')
    time.sleep(1)
    keyboard.write(test)
    time.sleep(.5)
    keyboard.press_and_release('enter')
    time.sleep(2)
    a.kill()
    # keyboard.press_and_release(['ctrl', 'w']) doesn't work either

标签: pythonsubprocesspopenkill

解决方案


您可以使用pid = a.pid,然后调用os.kill(pid, signal.SIGTERM)或来获取子进程的 PID os.kill(pid, signal.SIGKILL)


推荐阅读