Всем привет!))Помогите сдвинутся дальше))
Нужно найти минимальное значение цены и кликнуть по нему…
package com.amazon;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import java.util.List;
public class Test {
public static void main(String[] args) {
//create new driver
WebDriver driver = new FirefoxDriver();
//maximize window
driver.manage().window().maximize();
//go to URL
driver.get("http://www.amazon.com");
//find search field and insert text "HTC One M8 32Gb"
driver.findElement(By.cssSelector("#twotabsearchtextbox")).sendKeys("HTC One M8 32 Gb");
//click button "GO"
driver.findElement(By.cssSelector(".nav-input")).click();
//find prices on page
List<WebElement> price = driver.findElements(By.cssSelector(".a-size-base.a-color-price.s-price.a-text-bold"));
System.out.println(price.size());
for (int i = 0; i < price.size(); i++) {
WebElement min = price.get(i);
String a = min.getText();
System.out.println(a);
}
//close browser
driver.close();
}
}
public WebElement getMinPriceElement(List<WebElement> priceList) {
WebElement minPrice = null;
int min = 0;
for (WebElement e : priceList) {
if (Integer.parseInt(e.getText()) < min) {
min = Integer.parseInt(e.getText());
minPrice = e;
}
}
return minPrice;
}
А что именно вы хотите услышать подробнее? Как удалить символ $ из строки $123.45 при помощи replace? Вероятней всего, getText() будет вам возвращать так называемый friendly code. Т.е. его вам и нужно будет заменять на пустоту, прежде чем отдавать конструктору BigDecimal.