2015-12-19 68 views
1

有一個下拉列表,我需要比較新的值與舊的月份字符串= 2015年9月(非常規井)。那麼如果不是等於那麼這是一個新的月份,它應該被下載,否則出來的循環。我可以把列表放入ArrayList並比較字符串嗎?如何使用selenium web driver/java將列表<webelement>添加到ArrayList中?

請幫助下

WebDriver driver=new FirefoxDriver(); 
      //opening the PA page 
      driver.get("http://www.depreportingservices.state.pa.us/ReportServer/Pages/ReportViewer.aspx?%2fOil_Gas%2fOil_Gas_Well_Historical_Production_Report"); 
     //maximizing the window 
      driver.manage().window().maximize(); 
      WebElement select = driver.findElement(By.xpath(".//*[@id='ReportViewerControl_ctl04_ctl03_ddValue']")); 



      //List<WebElement> options = select.findElements(By.tagName("option")); 

      String str="Sep 2015 (Unconventional wells)"; 

回答

1

方法拉出下拉當前選項列表。

祝你好運。


拉動當前內容 '段報告' 的名單

/** 
* Uses a {@link FirefoxDriver} to load the targeted website and extracts all current options of the 'Reporting 
* Period' drop down to a List of String references. 
* 
* @return List of String references. 
*/ 
private List<String> getCurrentReportingPeriodContent() { 
    // List to hold the value we will return to the caller. 
    List<String> currentOptions = new ArrayList<>(); 

    WebDriver webDriver = new FirefoxDriver(); 
    webDriver.get(
     "http://www.depreportingservices.state.pa.us/ReportServer/Pages/ReportViewer.aspx?%2fOil_Gas%2fOil_Gas_Well_Historical_Production_Report"); 
    // maximizing the window 
    webDriver.manage().window().maximize(); 

    // This is the 'By.xpath' lookup used to find the dropdown field 
    By reportingPeriodLookup = By.xpath(".//*[@id='ReportViewerControl_ctl04_ctl03_ddValue']"); 
    // Find the 'Reporting Period' drop down on the page. 
    WebElement select = webDriver.findElement(reportingPeriodLookup); // Find the drop down 

    // Pull out the options as web elements 
    List<WebElement> matches = select.findElements(By.tagName("option")); 

    // Traverse the web elements to extrat the text. Text gets added to the 'currentOptions' List 
    for (WebElement match : matches) { 
     currentOptions.add(match.getText()); 
    } 

    // Clean up the webdriver 
    webDriver.close(); 

    // return the List of Strings pulled out of the 'options' back to the caller. 
    return currentOptions; 
} 
+0

你可能會笑現在。這是用java寫的嗎?請幫我用java代碼 – user2762008

+0

,我只需要在webdriver :( – user2762008

+0

我們可以在webdriver中試試這個嗎?你有很大的幫助 – user2762008

相關問題