我在我的 C# 项目中使用 Ghost Driver (PhantomJS)。我有个问题。Selenium 有 PhantomJSWebElement 和 PhantomJSDriver。我正在创建 PhantomJSDriver
PhantomJSDriverService service = PhantomJSDriverService.CreateDefaultService();
service.IgnoreSslErrors = true;
service.LoadImages = false;
service.Start();
PhantomJSDriver ghostDriver = new PhantomJSDriver(service);
然后尝试通过 xpath 查找元素
List<string> retVal = new List<string>();
var aElements = ghostDriver.FindElementsByXPath("//div[@id='menu']//a[@href]");
foreach(PhantomJSWebElement link in aElements)
{
try
{
retVal.Add(link.GetAttribute("href"));
}
catch (Exception)
{
continue;
}
}
所以我在投射IWebElemet
到PhantomJSWebElement
.
PhantomJSWebElement el = (PhantomJSWebElement)link;
也不起作用(抛出铸造异常)。所以问题是,如何通过 PhantomJSDriver 获取 PhantomJSWebElement 在查找时只返回 IWebElement (或它们的集合)。