最近在看Selenium的相关视频,简单写了一个质量不高的自动化发送邮件的代码,记录一下。
public class automail {
public static void main(String[] args) throws InterruptedException {
String username = "123456789";
String password = "987654321";
String Recipient = "12345678910";
// 1.把chrome浏览器驱动加载到系统变量中
System.setProperty("webdriver.chrome.driver","src/com/kingdee/web/chromedriver.exe");
// 2.创建chrome驱动,创建chrome驱动变量
ChromeDriver driver = new ChromeDriver();
// 3.访问QQ邮箱
driver.get("https://mail.qq.com/");
// 4.切换到登录页面所在的frame
driver.switchTo().frame("login_frame");
// 5.输入账号和密码前进行清空
driver.findElement(By.id("u")).click();
driver.findElement(By.id("u")).clear();
driver.findElement(By.id("u")).sendKeys(username);
driver.findElement(By.id("p")).click();
driver.findElement(By.id("p")).clear();
driver.findElement(By.id("p")).sendKeys(password);
Thread.sleep(100);
// 6.点击登录按钮
driver.findElement(By.id("login_button")).click();
Thread.sleep(1000);
// 7.定位到写信按钮并点击
driver.findElement(By.id("composebtn")).click();
Thread.sleep(500);
// 8.切换到写邮件所在的frame
WebElement frameElement1 = driver.findElement(By.id("mainFrame"));
driver.switchTo().frame(frameElement1);
// 9.填写收件人
driver.findElement(By.id("toAreaCtrl")).click();
driver.findElement(By.xpath("(//input[@type='input'])[2]")).clear();
driver.findElement(By.xpath("(//input[@type='input'])[2]")).sendKeys(Recipient);
// 10.填写主题
driver.findElement(By.xpath("//*[@id=\"subject\"]")).sendKeys("自动测试");
// 11.切换到正文的frame
WebElement frameElement2 = driver.findElement(By.xpath("//*[@class=\"qmEditorIfrmEditArea\"]"));
driver.switchTo().frame(frameElement2);
// 12.填写正文
driver.findElement(By.xpath("/html/body")).sendKeys("自动测试内容");
// 13.返回到上一级frame
driver.switchTo().parentFrame();
driver.findElement(By.xpath("//a[.=\"发送\"]")).click();
// 14.关闭驱动
driver.quit();
}
}
参考文章:https://www.cdsy.xyz/computer/programme/Python/230627/cd44395.html