admin管理员组文章数量:1529464
一、Chrome浏览器自动关闭
因为把driver = webdriver.Chrome()放在了函数内部,在函数执行完毕之后,程序内所有的步骤都结束了,关于这段程序的进程也就结束了,浏览器包含在内,所以才会自动退出。
from selenium import webdriver
class TestKeyWords(object):
#初始化
def __init__(self,browser_type):
self.open_browser(browser_type)
#调用浏览器
def open_browser(self,browser_type):
if browser_type == 'chrome':
self.driver = webdriver.Chrome()
self.driver.get('https://blog.csdn/')
elif browser_type == 'firefox':
self.driver = webdriver.Firefox()
else:
print('type error')
if __name__ == '__main__':
TestKeyWords('chrome')
二、解决方案
设置全局变量,即把打开浏览器的操作放在函数外部,函数执行完毕,浏览器就不会关闭
from selenium import webdriver
class TestKeyWords(object):
#初始化
def __init__(self,browser_type):
self.open_browser(browser_type)
#调用浏览器
def open_browser(self,browser_type):
#定义全局变量
global driver
if browser_type == 'chrome':
driver = webdriver.Chrome()
driver.get('https://blog.csdn/')
elif browser_type == 'firefox':
driver = webdriver.Firefox()
else:
print('type error')
if __name__ == '__main__':
TestKeyWords('chrome')
三、原理
关闭浏览器代码统一换成Firefox浏览器的话,不会自动关闭浏览器,是因为对应chrome浏览器厂家提供的浏览器源生驱动文件自身逻辑设置引起的,方法运行完全会自动关闭回收方法中定义的局部变量。
版权声明:本文标题:Python+Selenium程序执行完,chrome浏览器自动关闭解决方案 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1726733163a1082468.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论