51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1787|回复: 5
打印 上一主题 下一主题

python+selenium获取不了句柄

[复制链接]
  • TA的每日心情
    无聊
    4 天前
  • 签到天数: 530 天

    连续签到: 2 天

    [LV.9]测试副司令

    跳转到指定楼层
    1#
    发表于 2022-4-15 09:39:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    1测试积点

    我在做selenium自动化时,本来是打开了13个句柄,要关闭后面11个句柄,但是偶尔会出错,于是,我用打印的方式,发现出错的时候,是因为我要获取【2:】除前两个以外的共11个句柄,但却只获取了10个,于是有一个句柄就无法关闭导致出错,最后,我尝试专门写了一个函数来关闭多余的句柄,然而,依然是获取不到句柄。如以下代码所示。












    附件: 您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2022-5-1 22:15
  • 签到天数: 7 天

    连续签到: 1 天

    [LV.3]测试连长

    2#
    发表于 2022-4-16 23:13:11 | 只看该作者
    由于不是很清楚关闭句柄的原因,这里提两点建议:
    1、window_handler返回的列表是乱序的,[2:]的方式关闭句柄会不会关闭掉你不打算关闭的窗口?
    2、可以将你需要保留的窗口句柄ID保存下来,当你需要关闭其他窗口时,可以试试如下方式:
    # 存储原始窗口的 ID
        original_window = driver.current_window_handle
    # 循环执行,直到找到一个新的窗口句柄
        for window_handle in driver.window_handles:
            if window_handle != original_window:
                driver.switch_to.window(window_handle)
                break
    以上代码,摘抄至selenium官网  https://www.selenium.dev/zh-cn/d ... er/browser/windows/
    关于window_handles 来源于 https://www.w3.org/TR/webdriver1/#get-window-handles
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    3 天前
  • 签到天数: 1521 天

    连续签到: 5 天

    [LV.Master]测试大本营

    3#
    发表于 2022-4-18 11:19:09 | 只看该作者
    获取全量再关闭试试
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    1 小时前
  • 签到天数: 2819 天

    连续签到: 1 天

    [LV.Master]测试大本营

    4#
    发表于 2022-4-18 14:17:43 | 只看该作者
    2楼的建议看看
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    前天 08:51
  • 签到天数: 668 天

    连续签到: 6 天

    [LV.9]测试副司令

    5#
    发表于 2022-4-18 14:54:46 | 只看该作者
    乱序了
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 10:15
  • 签到天数: 756 天

    连续签到: 1 天

    [LV.10]测试总司令

    6#
    发表于 2022-4-18 15:08:04 | 只看该作者
    一楼说的很详细,参考下一楼的看看
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-25 08:49 , Processed in 0.068894 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表