Jan-08-2022, 12:13 PM
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
import time
import threading
from threading import *
from tkinter import *
def script1():
root = Tk()
#Displays some widgets and Texts
def on_closing():
#Looking for away to close all Threads at this point, also close the chrome window spawned by script2
root.destroy()
root.protocol("WM_DELETE_WINDOW", on_closing)
root.mainloop()
def script2():
driver = webdriver.Chrome(ChromeDriverManager().install())
#driver.maximize_window()
driver.get("https://google.com/")
time.sleep(8)
while True:
#Do some web scrapping
time.sleep(60)
if __name__ == "__main__":
# creating thread
t1 = threading.Thread(target=script1, args=())
t2 = threading.Thread(target=script2, args=())
# starting thread 1
t1.start()
# starting thread 2
t2.start()
t1.join()
t2.join() Hello Dev, I have the above code structure on which am trying to figure out a way of terminating/closing all the Threads by simply clicking the close button on the Tkinter Window.At the moment clicking the close button only terminates Thread1 while I want it to terminate both Threads.Kindly help me figure it out
