利用selenium和chrome做爬虫时,如何解决新弹出的标签页和对话框(警告框)

用selenium操作网页时,发现点击了一个按钮准备进入下一页,结果,突然弹出了一个新标签或者对话框,现有的driver都操作不了,怎么办呢?

1.新的标签页

出现新的标签页的时候,我尝试着拿webdriver,get了一下新的url地址,发现旧的标签页报错,新的标签页操作不了

这时候就该用.switch_to.window([i]) 。(switch_to_window已经被抛弃了,在pycharm中打出来,会被一到中划线狠狠拒绝。

其中i是窗口的序号(handle,句柄)。原来的窗口是0,新的窗口是1.如果多了呢?下面是百度给予的解释:

 

而如果是打开多个网页。首先打开网页1,再点击网页1上一个链接,在新窗口打开新网页2,同理点击新网页2上一个链接,新窗口打开新网页3等等,这是按打开顺序为网页编号。实际网页对应句柄如下图所示,即第一个打开网页一直是句柄0,而最新打开的网页记为句柄1,依次序编号。

Selenium如何操作及关闭新打开的标签页网页?
 

 

 

获取driver之后,剩下的就跟往常一样开始操作吧

2.alert(警告框,对话框)

 

(图是从这位仁兄的博客中拽的,https://blog.csdn.net/real_tino/article/details/59068827)对,就是这个,获取到他的driver很简单,driver.switch_to.alert,就可以,注意,这里alert后面没有跟括号。获取driver后我就想着按往常一样,定位“确定”这个按钮,结果发现what?ctrl+shift+c不好使,一点在那个确定上,他就。。。真的。。。确定了!!!,那怎么办呢?没关系,方法已经都写好了,如下所示,

.accept()           确认

.dismiss()          取消(我碰到的没有取消这个,没错只能同意)

.send_keys()     输入内容(如果有的话)

果然,因为操作太简单,也就不给各位大神发挥的空间了。

最后求关注,求点赞,欢迎大家关注我的公众号
在这里插入图片描述
记录所学所用,包括但不限于遥感、地信、气象、生态环境,机器学习知识,相关文献阅读,编程代码实现。偶尔荒腔走板的聊聊其他。欢迎不同领域的朋友们加入进来,多多交流。

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值