我有個問題
需要從帶有硒的網站中提取資料
但是我拉的下拉串列不是一個在另一個下面,而是并排的。如何對下拉選單下的資料進行排序?
private void button3_Click(object sender, EventArgs e)
{
WebDriverWait wait = new WebDriverWait(Driver, TimeSpan.FromSeconds(25));
wait.Until(SeleniumExtras.WaitHelpers.ExpectedConditions.ElementToBeClickable(By.XPath("/html/body/form/table[1]/tbody/tr/td[2]/select")));
Driver.FindElement(By.XPath("/html/body/form/table[1]/tbody/tr/td[2]/select")).Click();
Thread.Sleep(2000);
int say = 1;
IReadOnlyCollection<IWebElement> veri = Driver.FindElements(By.CssSelector("#DropDownList2")); //#DropDownList2 > option:nth-child(48) #DropDownList2 > option:nth-child(2)
foreach (IWebElement vericek in veri)
{
listBox1.Items.Add(say " ==> " vericek.Text );
say ;
}
}
問題
uj5u.com熱心網友回復:
我猜你的意思是并排,所有結果都保存在一個專案中。這可能是因為回傳的資料。因此,假設您已從網站收到此資料;主頁 - 設定 - 關于
嗯,它是“并排”的,你不希望它是這樣的。你想要這種格式;主頁設定 關于
您必須拆分回傳的文本。這是一個例子;
const string data = "Main Page - Settings - About";
var items = data.Split(" - ");
for (var i = 0; i < items.Length; i )
{
var item = items[i];
Console.WriteLine($"{i}) {item}");
}
uj5u.com熱心網友回復:
你不幫忙嗎?我需要找到一個緊急解決方案,要么將其列在另一個之下,要么我需要使用另一個專案而不是串列框。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/366540.html
下一篇:如何從字串中減去并保留前導零
