【Java】电商秒杀脚本之自动登录

实现功能:打开电商网站,自动填写用户名、密码并登录。

意义:了解WEB自动化,学习Java操作浏览器。 

开发环境:IntelliJ IDEA创建的Maven项目

目录

 一、添加依赖

二、Java操作浏览器

三、实现定时运行


 一、添加依赖

    <!--pom.xml-->
    <dependencies>
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>4.1.4</version>
        </dependency>
    </dependencies>

二、Java操作浏览器

    public static void doSeckill(){
	String url = "https://www.taobao.com/";

	//1.打开浏览器
	ChromeDriver browser = new ChromeDriver();
	Actions actions = new Actions(browser);
 
	//2.输入网址
	browser.get(url);
 
	//3.获取相关元素并进行点击或输入的操作
	browser.findElement(By.linkText("亲,请登录")).click();
    //打开登录页面后,为了避免加载未完成而获取不到元素,延迟1秒再继续,视网速决定
	try {
	    Thread.sleep(1000);
	} catch (InterruptedException e) {
	    e.printStackTrace();
	}
    //输入用户名
	browser.findElement(By.xpath(
"//div[@class=\"input-plain-wrap input-wrap-loginid \"]/input[@id=\"fm-login-id\"]"))
.sendKeys("username");
    //输入密码
	browser.findElement(By.xpath(
"//div[@class=\"input-plain-wrap input-wrap-password\"]/input[@id=\"fm-login-password\"]"))
.sendKeys("password");
    }

三、实现定时运行

    public static void main(String[] args) throws Exception {
	SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSSSSSSSS");
    //指定时间运行
	Date date = sdf.parse("2022-05-29 10:00:00 000000000");
	
	Timer timer = new Timer();
	
	timer.schedule(new TimerTask() {
	    @Override
	    public void run() {
		doSeckill();
		System.out.println("\n"+new Date());
	    }
	},date);
    }

扫描二维码关注公众号,回复: 15269354 查看本文章

猜你喜欢

转载自blog.csdn.net/Dawson_Ho/article/details/125036392