- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我最近开始使用 Coypu 通过 Web 浏览器自动执行一些任务。它非常有用,尤其是在填写表格和导航链接时。
现在,我正在尝试处理表格数据。我实际上想获取表数据并最终将其转储到管道分隔的文本文件中。
但是,我在 Coypu 和浏览表格行和列方面已经达到了我的局限性。但是,有几个示例说明如何将表读入数据集合。
一旦我达到某个点,我想获取 Coypu 对象并将它们变形为 Selenium 对象,以便我可以进行表格工作,但我似乎无法从 Coypu 中获取它。
测试代码如下: Console.WriteLine("TestMethod1()");
IWebDriver webDriver = null;
var sessionConfiguration = new SessionConfiguration()
{
Browser = Coypu.Drivers.Browser.Firefox,
AppHost = "http://blabla.com"
};
var browser = new BrowserSession(sessionConfiguration);
browser.Visit("/searches/index");
// Set the start date
browser.FillIn("sdate").With("01/01/2018");
// Set the end date
browser.FillIn("edate").With("12/30/2018");
// Set the city
browser.FindId("city").SelectOption("Chicago");
// Click on submit
browser.ClickButton("Submit");
// Get the table with data
var innerHTML = browser.FindCss("table#dataTable").InnerHTML;
Coypu.Drivers.Selenium.SeleniumWebDriver
//webDriver = (OpenQA.Selenium.IWebDriver)browser.Driver;
//IWebElement curTable = (IWebElement)browser.FindCss("table#dataTable").OuterHTML;
//TablePage page = new TablePage(webDriver);
//Utilities.ReadTable(page.Table);
Console.WriteLine( Utilities.ReadCell("Marker", 1) );
我的问题如下:
最佳答案
How do I extract the Selenium IWebDriver from Coypu BrowserSession?
给定一个 IBrowserSession browserSession
:
var nativeDriver = (OpenQA.Selenium.IWebDriver) browserSession.Driver.Native;
How do I extract out the table I want from Coypu and make it a Selenium IWebElement?
// Select your table via Coypu
var table = browser.FindCss ("table#dataTable");
// Cast ElementScope.Native to IWebElement
var nativeElement = (OpenQA.Selenium.IWebElement) table.Native;
关于c# - 如何从 Coypu 获取 Selenium IWebDriver 和 IWebElement?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53992094/
我刚刚将我的 selenium 从 2.29.1 更新到 2.35,现在我在尝试编译我的应用程序时收到一些荒谬的错误消息: 第一个错误: cannot convert from 'OpenQA.Sel
如果我有一个元素,由一些选择器定义 By,是否有一种好的方法来向(测试)用户识别它? 例如: var element = driver.Find(By.CssSelector(".some .css"
您能解释一下 By 元素和 IWebElement 之间的区别吗? 此外,为什么 selenium 不使用其中一种? [FindsBy(How = How.XPath, Using = "//div[
有没有一种方便的方法来检查 IWebElement 是否匹配 By 选择器 像这样的东西: bool isMatch = iWebElement.Matches(By.CssSelector("[da
我想做这样的事情(注意 IWebDriver 而不是典型的字符串) [Given(@"I select ""(.*)"" option")] public void GivenInISelec
假设我有一个页面对象 [FindsBy(How = How.Id, Using = "buttonSignIn")] 公共(public) IWebElement BtnSignin { 得到;放;
所以我尝试点击 YouTube 上的一个按钮,但是我无法通过 Xpath 找到按钮,因为按钮太多了,所以我尝试将它们保存在一个 IList 中,现在我想点击列表。 ChromeDriver chrom
有没有办法选择里面的元素已经获得了IWebElement.我试图通过 C# 绑定(bind) (RemoteWebDriver) 来做到这一点,但是 findElem.FindElements(By.
我有一个带有登录页面的示例测试,我想在其中模拟成功登录,然后注销,最后使用错误密码登录失败。当我第一次导航到登录页面时,我使用以下代码查找元素: IWebElement username = wait
html代码:
我正在将 selenium webdriverwait 方法应用于特定的 IWebElement 以在可用时获取此 IWebElement 的一些子元素。这是我的代码... WebDriverWait
是否可以从 IWebElement 获取 WebDriver? 我需要以下扩展: public static bool HasFocus(this IWebElement e) { var d
我正在尝试填写网站上的文本字段,每次打开该网站时,该字段的 ID 都会发生变化。为了避免这个问题,我通过它的类名查找 web 元素,这似乎工作得很好,因为我可以通过 单击它 currentWebEle
当我这样声明我的 IWebElement 时: [FindsBy(How = How.CssSelector, Using = "input#raffle_submit")] private IWeb
我遇到了麻烦: 我有我公司的内部 HTML。在此页面中,我有一张表。我想在 C# 中将 HTML 表转换为 DataTable: 这是我的代码: IWebElement ie = driver.Fin
对于下面的代码, IWebElement element; // = new WebElement(); try { element = driver.FindElement(By...);
描述:显示在屏幕上的 HTML 元素(矩形)的复杂结构,没有重叠,每个矩形具有不同的 HTML id 属性(因此可由 Selenium IWebDriver 和 C# 代码选择)。 目标:我需要以编程
我想用 Selenium 从 DOM 中提取一些信息。我正在使用 C# WebDriver。 查看 IWebElement 接口(interface),您可以轻松提取给定的属性。但是,我想在事先不知道
目标:使用 PageObject 检查当前页面上是否存在元素/IWebElement。 我知道你可以使用类似的东西: IWait wait = new WebDriverWait(driver, Ti
我最近开始使用 Coypu 通过 Web 浏览器自动执行一些任务。它非常有用,尤其是在填写表格和导航链接时。 现在,我正在尝试处理表格数据。我实际上想获取表数据并最终将其转储到管道分隔的文本文件中。
我是一名优秀的程序员,十分优秀!