当前位置: 首页 > 知识库问答 >
问题:

如何从水豚元素中提取硒元素?

孙洋
2023-03-14

比起Ruby、Capybara和SitePrism,我更熟悉Java和Selenium,所以如果这个问题太多,我深表歉意。

Selenium有一个非常有用的类来管理Select标签,Selenium::WebDriver::Support::Select,它可以通过传递代表select的Selenium Element(Selenium::WebDriver::Element)来创建。我想得到一个Select对象,这样我就可以使用它方便的方法。

然而,使用SitePrism和Capybara,定义元素的标准方法使我能够访问由Capybara的元素类Capybara::Node::Element建模的select,而我似乎找不到一种简单的方法来从Capybara元素中提取底层的Selenium元素。

我到处寻找替代方法,找到了Capybara的#select方法,但这对我来说似乎非常有限,因为它似乎迫使您按值进行选择,并且在页面上定义select的参数非常狭窄。

有没有简单的方法从SitePrism/Capybara创建Selenium Select?或者有没有更好的方法完全做到这一点?谢谢!

共有1个答案

唐阳晖
2023-03-14

啊,我找到了。它一直都在Capybara::Node::Element中。#native方法从驱动程序返回本机元素。然后可以将其传递到Selenium Select的initialize方法中,以成功创建Select。

 类似资料:
  • 我正在尝试使用以下结构单击element: 但是,这将抛出。 我当前正在使用:刮取(父)元素列表。这标识了正确的元素列表(按预期工作)。有了列表后,我应用以下函数: 使用: 而且 但是,这将触发。 我对此进行了几个小时的研究,基于几个帖子,我添加了“。”在两个斜杠之前,这表示相对于父级(而不是相对于整个DOM)。 如果我移除这个点,我总是得到页面上的第一个元素--而不是列表中每个父元素的子元素。

  • 问题:无法点击名为BT_SEARCH的元素 > click_button'Hae'返回:无法找到按钮"Hae"... click_link'Hae'返回:无法找到链接"Hae"... 查找(:xpath,“//输入[@name='BT\u SEARCH']”)。单击似乎找不到元素。 我无法修改源,也没有可用的id或类标签。此外,该页面使用ASP,我认为这是导致问题的原因。

  • 我正在使用Python中的Selenium。我想获取

  • 在火虫中,我有一个与此内容的链接: 如何使用“类名”访问链接(单击它)? 我尝试了以下方法: 但是我得到了错误: 线程“main” org.openqa.selenium中出现异常。InvalidSelectorException:给定的选择器cb_or_somename cb_area_0219无效或不产生WebElement 发生以下错误:InvalidSelectorError:不允许使用复

  • 问题内容: 的HTML 码 问题答案: 我已经看到这个问题在过去大约一年左右的时间里弹出了几次,我想尝试编写此函数…所以就到这里了。它接受父元素,并删除每个子元素的textContent,直到剩下的是textNode为止。我已经在您的HTML上对其进行了测试,并且可以正常工作。 你叫它

  • 问题内容: 我有以下类型的数据框 我希望我的输出遵循以下类型 我的col4是一个数组,我想将其转换为单独的列。需要做什么? 我看到了很多关于flatmap的答案,但是它们正在增加一行,我只想将元组放在另一列中但在同一行中 以下是我的实际架构: 也可以请一些人帮我解释一下数据帧和RDD 问题答案: 创建样本数据: 用于从数组列中提取元素,按实际情况替换为: