最近在学Selenium的时候遇到一个问题,当我执行完程序,浏览器自动关闭了,我在程序中也没有写driver.quit()方法,代码如下:
from selenium import webdriver
classServiceConfig():# 定义prepareWork函数,做准备工作defprepareWork(self,url):# 打开浏览器驱动
driver = webdriver.Chrome(r'd:\chromedriver.exe')
driver.implicitly_wait(10)
driver.get(url)if __name__ =='__main__':
url ='https://www.baidu.com'
sc = ServiceConfig()
sc.prepareWork(url)
后面发现是因为我把driver = webdriver.Chrome(r’d:\chromedriver.exe’)放在了函数内部,在函数执行完毕之后,程序内所有的步骤都结束了,关于这段程序的进程也就结束了,浏览器包含在内,所以才会自动退出。
设置全局变量,即把打开浏览器的操作放在函数外部,函数执行完毕,浏览器就不会关闭
from selenium import webdriver
# 打开浏览器驱动
driver = webdriver.Chrome(r'd:\chromedriver.exe')
driver.implicitly_wait(10)classServiceConfig():# 定义prepareWork函数,做准备工作defprepareWork(self,url):
driver.get(url)if __name__ =='__main__':
url ='https://www.baidu.com'
sc = ServiceConfig()
sc.prepareWork(url)
版权归原作者 洛神赋520 所有, 如有侵权,请联系我们删除。