zoukankan      html  css  js  c++  java
  • selenium 下载百度音乐并验证


    package
    baidu; import java.io.File; import java.io.IOException; import java.util.List; import org.apache.commons.io.FileUtils; import org.openqa.selenium.By; import org.openqa.selenium.Keys; import org.openqa.selenium.OutputType; import org.openqa.selenium.TakesScreenshot; import org.openqa.selenium.WebDriver; //import org.openqa.selenium.WebDriver.Navigation; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.interactions.Actions; public class selenium { public static void snapshot(TakesScreenshot drivername, String filename) { // this method will take screen shot ,require two parameters ,one is driver name, another is file name File scrFile = drivername.getScreenshotAs(OutputType.FILE); // Now you can do whatever you need to do with it, for example copy somewhere try { System.out.println("save snapshot path is:E:/"+filename); FileUtils.copyFile(scrFile, new File("E:\"+filename)); } catch (IOException e) { // TODO Auto-generated catch block System.out.println("Can't save screenshot"); e.printStackTrace(); } finally { System.out.println("screen shot finished"); } } public static void main (String [] args) throws InterruptedException { String URL="http://61.135.169.105/";

    //avoid Chrome warnning message like "unsupported command-line flag --ignore-certificate-errors. "
    ChromeOptions options = new ChromeOptions();
    options.addArguments("--test-type");

    System.setProperty("webdriver.chrome.driver", "D:\selenium\chromedriver.exe");
    WebDriver driver = new ChromeDriver(options);

    
            driver.get(URL);
            //max size the browser
            driver.manage().window().maximize(); 
     /*
            Navigation navigation = driver.navigate();
             navigation.to(URL);*/
             Thread.sleep(2000);
             snapshot((TakesScreenshot)driver,"open_baidu.png");
             //WebElement reg=driver.findElement(By.name("tj_reg"));
             //reg.click();
             //    WebElement keyWord = driver.findElement(By.id("kw1"));
             
             //find the element
             WebElement keyWord = driver.findElement(By.xpath("//input[@id='kw1']"));
            keyWord.clear();
            //send key words 
             keyWord.sendKeys("小苹果");
             Thread.sleep(3000);
              snapshot((TakesScreenshot)driver,"input_keyWord.png");
             
     
             
              WebElement submit = driver.findElement(By.id("su1"));
              
              System.out.println(submit.getLocation());
              submit.click();
              //System.out.println(driver.getWindowHandle());
             Thread.sleep(5000);
              
             WebElement se=driver.findElement(By.xpath("//*[@id="2"]/div[1]/div[2]/table/tbody/tr/td[5]/span/a")) ;
             Actions action = new Actions(driver); 
              action.clickAndHold(se);
             action.sendKeys(Keys.DOWN);
             
             Thread.sleep(5000);
          
             List<WebElement> elementList = driver.findElements(By.tagName("herf"));
             for(WebElement e:elementList)
               {
                 System.out.print("-->"+e.getText());  
               }
             
             //se.click();
             
             
             
            // System.out.println(driver.getPageSource());
            
            
           //  System.out.println(pageSource);
            //WebElement link =driver.findElement(By.xpath(SELENIUM_LINK));
            WebElement link =driver.findElement(By.xpath("//*[@id="2"]/div[1]/div[2]/table/tbody/tr/td[5]/span/a"));//By.xpath("//*[@id="1"]/h3/a"));     //*[@id="1"]/h3/a
            link.click();
            Thread.sleep(5000); 
            driver.switchTo().window(driver.getWindowHandles().toArray(new String[0])[1]);
            Thread.sleep(5000); 
             WebElement down =driver.findElement(By.xpath("//*[@id="128"]"));//<i class="icon btn-icon-download-small"></i>
             
            Thread.sleep(5000); 
            down.click();
            snapshot((TakesScreenshot)driver,"down_m.png");
            //get page title
            System.out.println(driver.getTitle());
             Thread.sleep(5000);
             WebElement userName=driver.findElement(By.id("TANGRAM__PSP_8__userName"));
             WebElement password=driver.findElement(By.id("TANGRAM__PSP_8__password"));
             WebElement login=driver.findElement(By.id("TANGRAM__PSP_8__submit"));
             Thread.sleep(5000);
             userName.sendKeys("QAtest");//your baidu userName
             password.sendKeys("mypassword");//your baidu password
             
             login.submit();
        //     navigation.back();
              snapshot((TakesScreenshot)driver,"open_bake.png");
             System.out.println(driver.getTitle()+"
    "+driver.getCurrentUrl());
             
         
             Thread.sleep(50000);
             File file=new File("C:\Users\Young\Downloads\小苹果.mp3");
             if(file.exists())
             {
                 System.out.println("PASS");
             }
             else
             {
                 System.out.println("FAIL");
             }
              driver.quit();
               
           
        }
        
    }

     如果出现:unsupported command-line flag --ignore-certificate-errors.

    //avoid Chrome warnning message like "unsupported command-line flag --ignore-certificate-errors. "
    ChromeOptions options = new ChromeOptions();
    options.addArguments("--test-type");

    System.setProperty("webdriver.chrome.driver", "D:\selenium\chromedriver.exe");
    WebDriver driver = new ChromeDriver(options);

  • 相关阅读:
    Flash 教程
    版面在简洁模式下去今日贴.主题贴.发贴总数的方法 Dvbbs
    Get Certificate of website by Firefox
    OpenSSL 命令说明
    Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
    Python 字符串操作(截取/替换/查找/分割)
    男子英文名释义
    AD 端口相关
    How do I obtain a Digital Certificate from my Certificate Authority (CA)?
    C,C++,java,python对比
  • 原文地址:https://www.cnblogs.com/tobecrazy/p/3908706.html
Copyright © 2011-2022 走看看