Я получаю 500+ элементов на FindElements(By.Xpath)
.
Но когда я зацикливаю их, чтобы получить текстовое значение, это занимает 30+ секунд.
Это очень медленно и недопустимо.
Я использую этот код:
var obj = driver.FindElements(By.Xpath...); // fast enough for 500 elements
int count = obj.Count;
for (int i = 0; i < count; i++)
{
string a = obj.ElementAt(i).Text; // long time, approx 0.05 sec
Debug.print(a); // long time, approx 0.05 sec
}
// total takes 30secs appox. just for printing text values of 500 elements.
Я пробовал с By.CssSelector
, но разница не большая.
И это пример строки xpath, который я использую:
"//wpsel-app/div[@class='wpsel-app-wrapper']/wpsel-sport/div/div/div/section/div/div[@class='wpsel-eventBloc']/div/wpsel-event-main/div/wpsel-event-main-normal/a[@class='wpsel-bloc']/div[@class='wpsel-blocRight']/wpsel-market-offer-event/div[@class='buttonGroup']/div[@class='buttonLine u-ovh']/div[@class='buttonLine-item']/button[@class='outcomeButton']/span[@class='outcomeButton-data']"
Какое-то длинное, и я не думаю, что эта проблема связана с длинной строкой xpath.
Есть ли уловка для этой проблемы?