如何使用Selenium WebDriver获取图像src名称

Nic*_*ahn 3 selenium webdriver selenium-webdriver

我正在使用此代码,但它返回带有url的图像名称

IWebElement element = driver.FindElement(By.XPath("Your xpath"));
string path = element.GetAttribute("src");
Run Code Online (Sandbox Code Playgroud)

结果:

http://nameofthehost/imagename.jpg
Run Code Online (Sandbox Code Playgroud)

我想要的只是吐我的src名字,我该怎么做?

Jim*_*ans 5

有些浏览器会在JavaScript中返回完整的URL,即使在HTML源代码中指定了相对URL也是如此.因此,您不必基于您正在使用的浏览器对您的代码进行特殊处理WebDriver规范化包含URL的所有属性和属性以返回完整的URL.要解决此问题,您可以直接使用JavaScript.

// assume driver is a valid WebDriver object
// Java code
WebElement element = driver.findElement(By.xpath("your XPath"));
String src = ((JavascriptExecutor)driver).executeScript("return arguments[0].attributes['src'].value;", element).toString();
Run Code Online (Sandbox Code Playgroud)