zoukankan      html  css  js  c++  java
  • 去哪儿网自动化

    import java.text.SimpleDateFormat;
    import java.util.Calendar;
    import java.util.Date;
    import java.util.concurrent.TimeUnit;

    import org.openqa.selenium.By;
    import org.openqa.selenium.JavascriptExecutor;
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.WebElement;
    import org.openqa.selenium.chrome.ChromeDriver;
    import org.openqa.selenium.interactions.Actions;

    public class Test {

    public static void main(String[] args) {
    System.setProperty("webdriver.chrome.driver", "d://chromedriver.exe");
    WebDriver driver = new ChromeDriver();
    driver.get("http://flight.qunar.com/");
    driver.manage().window().maximize();
    driver.manage().timeouts().pageLoadTimeout(60, TimeUnit.SECONDS);
    driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);
    WebElement from_inpox = driver
    .findElement(By.xpath("//div[@id='js_flighttype_tab_domestic']//input[@name='fromCity']"));
    WebElement to_inpox = driver
    .findElement(By.xpath("//div[@id='js_flighttype_tab_domestic']//input[@name='toCity']"));
    WebElement from_date = driver
    .findElement(By.xpath("//div[@id='js_flighttype_tab_domestic']//input[@name='fromDate']"));
    WebElement sigleWayCheckBox = driver.findElement(
    By.xpath("//div[@id='js_flighttype_tab_domestic']//input[@class='inp_chk js-searchtype-oneway']"));
    if (!sigleWayCheckBox.isSelected()) {
    sigleWayCheckBox.click();
    }
    Actions actions = new Actions(driver);
    actions.moveToElement(from_inpox).click().perform();
    driver.findElement(By
    .xpath("//div[@data-panel='domesticfrom-flight-hotcity-from']//a[@class='js-hotcitylist' and text()='西安']"))
    .click();
    driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
    driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);

    actions.moveToElement(to_inpox).click().perform();
    driver.findElement(By
    .xpath("//div[@data-panel='domesticto-flight-hotcity-to']//a[@class='js-hotcitylist' and text()='北京']"))
    .click();
    driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
    driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);

    from_date.clear();
    from_date.sendKeys(getDateAfterToday(7));
    WebElement search = driver
    .findElement(By.xpath("//div[@id='js_flighttype_tab_domestic']//button[@class='btn_search']"));
    search.submit();

    driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
    driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);
    WebElement page2 = driver.findElement(By.xpath("//div[@id='hdivPager']/a[@value='2']"));
    JavascriptExecutor jse = (JavascriptExecutor) driver;
    jse.executeScript("arguments[0].scrollIntoView()", page2);
    page2.click();

    driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
    driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);
    driver.findElement(By
    .xpath("(//div[@class='avt_trans']//p[contains(text(),'每段航班均需缴纳税费')]/ancestor::div//div[@class='a_booking']/a)[3]"))
    .click();
    driver.findElement(By.xpath("//div[@id='flightbarXI883']//div[@class='t_bk']/a")).click();

    }

    public static String getDateAfterToday(int dateAfterToday) {
    Calendar cal = Calendar.getInstance();
    cal.add(Calendar.DATE, +dateAfterToday);
    System.out.println(cal.getTime().toString());
    Date date = cal.getTime();
    SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
    System.out.println(df.format(date));
    return df.format(date);
    }
    }

  • 相关阅读:
    MybatisPlus-03
    MybatisPlus-02
    MybatisPlus_01
    卷积网络可解释性复现 | Grad-CAM | ICCV | 2017
    卷积涨点论文 | Asymmetric Convolution ACNet | ICCV | 2019
    pytorch实现 | Deformable Convolutional Networks | CVPR | 2017
    图像处理论文详解 | Deformable Convolutional Networks | CVPR | 2017
    轮廓检测论文解读 | Richer Convolutional Features for Edge Detection | CVPR | 2017
    Argo CD使用指南:如何构建一套完整的GitOps?
    Kubernetes弃用Docker后怎么办?
  • 原文地址:https://www.cnblogs.com/tobecrazy/p/4750178.html
Copyright © 2011-2022 走看看