0
我怎樣才能得到webelement基於類_3d5d
類中的數據鍵點擊?更準確地說,如果用戶輸入值2002,它將會有一個錯誤告訴用戶「沒有這一年,請再次輸入」,並允許他重新輸入值。如果鍵入的值與數據類型匹配,則會單擊該元素。從螢火蟲點擊發現硒元素webelement
<div class="_5ay5">
<div class="_18fs">
<div id="PageScrubberPagelet_153681831442414"
data-referrer="PageScrubberPagelet_153681831442414">
<div class="_4vm5 _5ay5">
<ul id="u_0_62">
<li class="_3d5d">
<a id="u_0_5x" class="_3d5b" role="button" href="#"
data-key="recent">Recent</a>
</li>
<li class="_3d5d">
<a id="u_0_5y" class="_3d5b _-fk" role="button"
href="#" data-key="year_2015">2015</a>
</li>
<li class="_3d5d">
<a id="u_0_5z" class="_3d5b" role="button" href="#"
data-key="year_2014">2014</a>
</li>
<li class="_3d5d">
<a id="u_0_60" class="_3d5b" role="button" href="#"
data-key="year_2013">2013</a>
</li>
HTML片段這就是我試圖和它點擊任何一年的用戶輸入。然而,這種解決方案在編碼年份被硬編碼。那麼,有沒有一種方法可以讓年份被檢索,如果它在html中可用?此外,如果沒有這種年份,則允許用戶重新輸入。
Scanner reader = new Scanner(System.in); // Reading from System.in
System.out.println("Enter a year (YYYY): ");
String year = reader.next(); // Scans the next token of the input as an int.
if (year.contains("recent")){
WebElement recent = dr.findElement(By.xpath("//a[contains(@data-key,'recent')]"));
recent.click();
}
else if (year.contains("2015")){
WebElement year_2015 = dr.findElement(By.xpath("//a[contains(@data-key,'2015')]"));
year_2015.click();
}
else if (year.contains("2014")){
WebElement year_2014 = dr.findElement(By.xpath("//a[contains(@data-key,'2014')]"));
year_2014.click();
}
else if (year.contains("2013")){
WebElement year_2013 = dr.findElement(By.xpath("//a[contains(@data-key,'2013')]"));
year_2013.click();
}
你嘗試過什麼,什麼結果呢?正如你在學校所做的那樣,請展示你的工作。 :)這是在SO上獲得問題的過程中的一部分。這對你很有幫助,因爲它會迫使你調查自己的問題並思考問題。這也向讀者證明你做了功課,並做出了合理的嘗試來回答你自己的問題。第三,它可以幫助讀者找到和診斷問題,爲您提供更好的答案,減少浪費時間。 – JeffC
@JeffC感謝您的建議,我編輯並顯示了我的工作,如上所示。 –
xpath不工作嗎? –