怎么让python窗口最后不退出_python - 如何让selenium关闭最后一个标签且不退出浏览器...

问 题

问题背景:

写了一个小脚本,监听redis中是否有url,如果有链接则调用FireFox打开这个网页进行一系列操作,操作完成之后则继续监听。

目前的方法是操作完之后直接driver.quit(),然后监听到新的url时则重新启动,这样带来一个问题就是浏览器的启停非常消耗时间。

我尝试操作完成之后用driver.close()来关闭页面,但是发现没办法关掉最后的那一个,而且如果这个时候driver.get(url)会报错。

所以问题就是:

如何打开一个浏览器,当有新任务进来之后就打开窗口操作,操作完毕之后关闭所有窗口但不退出浏览器,等待下一个任务。

解决方案

Firefox打开tab和关闭tab的快捷键分别为:

Ctrl+t

Ctrl+w

下面有一段实例代码演示如何使用ActionChain来使用操作快捷键:

from selenium import webdriver

from selenium.webdriver.common.keys import Keys

from selenium.webdriver.common.action_chains import ActionChains

# launch our web driver and get a page

browser = webdriver.Firefox()

browser.get("http://www.google.com/")

# try to open a new tab

ActionChains(browser).key_down(Keys.CONTROL).send_keys("t").key_up(Keys.CONTROL).perform()

# 你可以自行添加关闭tab页面的快捷键达到你的目的

wx.jpg

扫一扫关注IT屋

微信公众号搜索 “ IT屋 ” ,选择关注与百万开发者在一起

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值