python、selenium 中切换帧的函数

2023-12-14

我正在寻找一个可以更轻松地在两个框架之间切换的功能。现在,每次我需要在帧之间切换时,我都会通过以下代码来完成此操作:

driver.switch_to.frame(driver.find_element_by_css_selector("frame[name='nav']"))

driver.switch_to.frame(driver.find_element_by_css_selector("frame[name='content']"))

我的目标是获得一个带有参数的函数,仅用于更改导航或内容,因为其余部分基本相同。

我已经尝试过的是:

def frame_switch(content_or_nav):
x = str(frame[name=str(content_or_nav)] #"frame[name='content_or_nav']"
driver.switch_to.frame(driver.find_element_by_css_selector(x))

但这给了我一个错误

 x = str(frame[name=str(content_or_nav)]
                  ^

语法错误:语法无效


其编写方式是尝试将 CSS 代码解析为 Python 代码。你不想要这样。

该功能适合:

def frame_switch(css_selector):
  driver.switch_to.frame(driver.find_element_by_css_selector(css_selector))

如果您只是想切换到基于name属性,那么你可以使用这个:

def frame_switch(name):
  driver.switch_to.frame(driver.find_element_by_name(name))

要切换回主窗口,您可以使用

driver.switch_to.default_content()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python、selenium 中切换帧的函数 的相关文章

随机推荐

  • jquery ajax进度与自定义计算

    在执行处理图片的长 PHP 脚本时 我需要有关 ajax 进度条的建议 我知道 stackoverflow 上已经有很多问题了 比如 显示长时间运行的 PHP 脚本的进度 or 通过 xhr 实现 JQuery ajax 进度 or 使用a
  • Java读写本地数据库?

    我有一个程序不断从网站获取信息并不断更新 截至目前 我将所有这些信息存储在arraylist然后当我完成后 我将其写入文本文件 我需要操纵这些信息 但是 它创建了一个巨大的文本文件 我无法不断地读取信息并将信息写入文本文件 因为它需要很长时
  • 如何为 Azure AD B2C 配置 SSO?

    As per Azure AD B2C 文档我们可以为 Azure AD B2C 应用程序配置 SSO 我们希望用户自行注册应用程序 从而选择 AD B2C 但是 在创建 B2C 租户帐户并配置所有策略之后 我无法找到配置 SSO 的选项
  • 这个构造是什么意思“__builtin_expect(!!(x), 1)”

    具体来说 我问的是双 在 built in 的参数中 按照 C 语言 它是双重否定吗 The 简直就是两个 操作员彼此相邻 这是将任何非零值转换为的简单方法1 并离开0按原样 又名 布尔化 值 看 c 运算符 是两个 NOT 吗 对于一般逻
  • 获取视图或控制器中的当前区域名称

    如何获取视图或控制器中的当前区域名称 有没有类似的东西ViewContext RouteData Values controller 对于地区 从MVC2开始你可以使用ViewContext RouteData DataTokens are
  • Rails 3.1,由于缺少局部部分变量而导致内存泄漏(Ruby 1.9.2-p290)

    如果我像这样渲染部分 渲染 部分 gt event news item 对象 gt 事件 变量 gt true 然后参考variable在部分中触发了内存泄漏 Rails 似乎进入了递归 然后 我必须在内存使用量失控之前快速重新启动服务器
  • 如何获取亚马逊S3上文件的md5sum

    如果我在 Amazon S3 上有现有文件 那么无需下载文件即可获取其 md5sum 的最简单方法是什么 AWS 的文档ETag 截至 2023 年 11 月 17 日 说 实体标签 ETag 代表对象的特定版本 ETag 仅反映对象内容的
  • 使用 MinGW/MSYS 编译 freetype2 时出现问题

    用MinGW和MSYS编译freetype2好像有问题 我对 freetype 源代码的干净副本以及纯粹的 MinGW 和 MSYS 的尝试给出了 Andrew MCARDLE PC documents code cd freetype 2
  • 创建单独变量字典的更简单方法?

    我希望能够以字符串形式获取变量的名称 但我不知道 Python 是否具有那么多的自省功能 就像是 gt gt gt print my var name my var 我想这样做 因为我有一堆变量 我想把它们变成字典 例如 bar True
  • 无法调用分页dojo增强网格上的函数

    我尝试了所有可能的方法 但它不起作用 当我移动到 dojo dataGrid 中的另一个页面 分页期间 时 我想调用一个函数 我尝试了下面的代码 但它不起作用 方法一 nextPage function src alert going gr
  • 在loopback.io中进行连接查询

    我正在尝试使用 Loopback io 构建一个简单的应用程序作为我的学习过程 我已经设置了项目 创建的模型和 API 工作正常 现在我正在尝试创建一个自定义 api 它可以通过进行联接查询从两个不同的模型获取数据 所以我有两个模型 sto
  • axios post 请求成功后刷新表

    这是我来自 axios 的示例请求响应 var data id 1 name john username john doe birthdate 1999 05 21 age 20 email email protected id 2 nam
  • 将多个 hdf5 文件合并到一个 pytable 中

    我有一些hdf5文件 每个文件都具有相同的结构 我想创建一个pytable通过某种方式合并它们hdf5 files 我的意思是 如果 file1 中的数组的大小为 x 而 file2 中的数组的大小为 y 则结果数组pytable大小为 x
  • 我可以将 CSS 应用于 swing 文本组件吗?

    许多 swing 文本组件将解释 HTML 如果可能的话 我想使用 CSS 来设置 HTML 的样式 有人知道怎么做吗 The Jaxx框架允许您执行此操作
  • 从音频输入捕获原始音频以在 Mac 上进行实时处理的最简单方法

    从内置音频输入捕获音频并能够在请求时实时读取原始采样值 如 wav 中 的最简单方法是什么 就像从套接字读取一样 希望代码使用 Apple 的框架之一 音频队列 文档不是很清楚 我需要的是非常基础的 为此尝试使用 AudioQueue 框架
  • Google API 上未捕获异常“InvalidArgumentException”,带有消息“

    我已复制此网站上他们的文档中的代码 here 我已经更改了下面这些的 JSON 我已经在 Composer 上的 API 上生成了新文件 但仍然遇到一些问题 我不确定我做错了什么 这是否意味着他们的 API 漏洞太多 这是演示链接 demo
  • 使用嵌套视图时 Prism 7 抛出异常

    几个月前我发布了类似的问题使用 Prism 和 IsNavigationTarget 处理嵌套视图 可能返回 false 我仍然不确定正确的方法是什么 假设你有一个视图A 在这个视图A中你声明了一个区域A 然后你在这个区域A中注入了一个视图
  • 如何在窗口外触摸时取消 Activity 等主题的对话框?

    我有一个带有对话框主题的活动 当有人触摸此活动窗口之外的任何位置的屏幕时 我想关闭 完成 此活动 我怎样才能做到这一点 只是要指出的是is一种从以对话框为主题的活动中获得类似对话框的 触摸外部取消 行为的方法 尽管我还没有完全调查它是否有不
  • 正则表达式在多个多行字符串中查找列表值python

    我正在寻找一些帮助 以在具有多行但相似模式的字符串中搜索列表条件 每个子查询都有as and so as space and space 图案 我想搜索每个模式中的子标准并生成输出 sub apple apple event pear st
  • python、selenium 中切换帧的函数

    我正在寻找一个可以更轻松地在两个框架之间切换的功能 现在 每次我需要在帧之间切换时 我都会通过以下代码来完成此操作 driver switch to frame driver find element by css selector fra