我在一段时间后终止多进程线程,当我终止它时,它不会杀死chromeDriver。以下是代码的一个示例(保持简单):
def start_thread(url):
driver = webdriver.Chrome()
driver.get(url)
urls=[]
threads=[]
for counter in range(urls):
thread = multiprocessing.Process( target=start_thread,name=f'start_thread_{counter}', args=[url])
threads.append(thread)
thread.start()
sleep(10)
for t in threads:
t.terminate()
线程确实被终止了,但chromeDriver并非如此。我想知道在终止进程时是否有任何选项可以终止该驱动程序。
1条答案
按热度按时间ymdaylpp1#
因为从孩子那里劫持会话的方法似乎不再起作用,你不得不使用psutils手动终止Chrome和WebDriver及其所有子项,直到他们将会话劫持添加到Web驱动程序中。
以这种方式搜索孩子在某种程度上是必要的,因为Chrome往往会打开很多孩子,尽管它可能仅限于Windows上的两个孩子,但其他系统可能不是这样。