【发布时间】:2014-02-01 01:52:04
【问题描述】:
我正在尝试使用 WatiN 填充与给定 CSS 选择器匹配的输入。 这是一个代码示例:
public ActionResult Do(WebScraper webScraper)
{
var target = webScraper.Browser.Element(Find.BySelector(TargetSelector));
if (target == null)
{
return ActionResult.Failure(string.Format("No element found matching selector '{0}'.", TargetSelector));
}
target.SetAttributeValue("value", Value);
return ActionResult.Success();
}
使用“#someID”的 TargetSelector 进行测试。在执行此操作之前检查了页面,我可以看到<input id="someID" ... ></input>
收到如下所示的错误:
找不到匹配条件的元素标签:Selector = '#someID'
谢谢,
【问题讨论】:
-
我从来没有使用过watin,但是您是否需要通过
someID而不是#someID? -
如果我没记错的话,Find.BySelector 需要一个 JQuery/CSS 样式选择器。这意味着前缀 '#' 和 '.'应该代表 id 和 class。
-
如果你有ID,为什么不做一个Find.ById()?此外,在用于 CSSSelectors 的 Selenium 中,您不使用 # - 我不了解 WatiN,但您应该尝试一下。
标签: css-selectors web-scraping watin