出于营销原因,我正在使用 selenium 打开一些浏览器窗口。我只需打开我的营销资源,通过 selenium 登录并开始工作。
问题是,在执行代码后,selenium 关闭了窗口。
到目前为止,所有解决方案都没有多大帮助。
我有 13 个浏览器窗口 atm.,它们看起来像这样:
def open_instagram():
try:
# Connect
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--incognito")
browser = webdriver.Chrome('drivers/chromedriver.exe', chrome_options=chrome_options)
browser.set_window_size(1800, 900)
browser.get("https://www.instagram.com/accounts/login/?hl=de")
browser.find_element(By.NAME, 'username').send_keys('MYEMAIL', Keys.TAB, 'MYPW', Keys.ENTER)
except Exception as e:
print (e, 'Instagram')
open_instagram()
我找到的最接近的解决方案是在我的脚本末尾添加它,但不知何故它只会保持 5 个窗口打开,而不是关闭 5 个窗口并打开接下来的 5 个新窗口:
while True:
pass
我只希望 selenium 保持所有浏览器窗口打开,直到我手动关闭它们。
原文由 Roman 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果您希望 chrome 和 chromedriver 保持打开状态,则必须在启动 chromedriver 时使用“分离”选项。
在你的情况下添加:
在将选项传递给浏览器之前
或者 您可以在调试模式下运行代码,在末尾设置断点,当它暂停时“终止”程序并接管浏览器(如果您愿意),但这仅适用于 IDE。
编辑-为清楚起见添加了导入