Я пытаюсь удалить данные с веб-сайта cricinfo и написал метод, который принимает имя игрока и отображает его соответствующие данные.
Если вы видите, что этот метод берет имя игрока и отображает все его данные.
Мое требование - отображать полную карту результатов для всех игроков вместо отображения данных только для одного игрока.
URL
https://www.espncricinfo.com/series/8039/scorecard/1144490/india-vs-south-africa-8th-match-icc-cricket-world-cup-2019
Метод
public static void displayData(WebDriver driver, String input)
{
WebElement player = driver.findElement(By.xpath("//a[contains(text(),'"+input+"')]"));
String player_name = player.getText();
WebElement bowled_by = driver.findElement(By.xpath("//a[contains(text(),'"+input+"')]//parent::div//following-sibling::div[@class='cell commentary']"));
String bowled_by_detail = bowled_by.getText();
List<WebElement> score_card = driver.findElements(By.xpath("//a[contains(text(),'"+input+"')]//parent::div//following-sibling::div[@class='cell runs']"));
System.out.println(player_name);
System.out.println(bowled_by_detail);
for(int i=0;i<score_card.size();i++)
{
String values = score_card.get(i).getText();
System.out.print(values + " | ");
}System.out.println();
}
Выполнение метода
displayData (драйвер, "HM Amla");
Результат
HM Amla c Шарма б Бумра 6 | 9 | 16 | 1 | 0 | 66,66 |