Как я могу оптимизировать "findelements" и "tolist" части моего кода для более быстрой работы? Я делаю список заголовков полей и список его значений с помощью cssselectors, архивирую их и добавляю в свою базу данных. Это самая медленная часть моей программы, и мне было интересно, как я могу ускорить этот процесс. Пожалуйста, помогите спасибо <3 </p>
public static void zipper()
{
//Database connection
MongoClient dbClient = new MongoClient(mongoinfo);
var db = dbClient.GetDatabase("TestDB");
var collec = db.GetCollection<BsonDocument>("TestDB");
//Zip editList
foreach (var item in editList)
{
//Console.WriteLine(newURL);
driver.Navigate().GoToUrl(item);
IList<String> keys = new List<string>();
IList<IWebElement> keyList =
driver.FindElements(By.CssSelector("td.Field.box"))
.ToList();
foreach (IWebElement key in keyList)
{
if (key.Text != " Person authorizing adjustment")
{
keys.Add(key.Text.TrimStart(' '));
}
}
IList<String> vals = new List<string>();
IList<IWebElement> valList =
driver.FindElements(By.CssSelector("td.Data.box"))
.ToList();
foreach (IWebElement val in valList)
{
vals.Add(val.Text);
}
int keynum = keys.Count();
Console.WriteLine(keynum);
int valnum = vals.Count();
Console.WriteLine(valnum);
var keysAndVals = keys.Zip(vals, (first,second) =>
first+":"+second);
IList<String> kv = keysAndVals.ToList();
BsonArray bArray = new BsonArray();
foreach (var term in kv)
{
Console.WriteLine(term);
bArray.Add(term);
}
var document = new BsonDocument();
document.Add("TestDB", bArray);
collec.InsertOneAsync(document);
}
}
Есть ли неявные ожидания, которые я могу использовать?
или мне не хватает async / await, который нужно где-то использовать?