Java淘宝秒杀脚本(已自测)

开场白

我的室友如花是个貌美如花的黄花大闺女,这不是放假,大家都在宿舍幻想未来,只有如花在睡觉,突然,如花原地炸起,说了一句:“我要学习用java写一个淘宝秒杀脚本!!!”

大家一脸茫然的看着如花,脚本是什么?我赶紧上网查了一下。

脚本是利用某种固定的描述性语言,根据一定的格式编写的可执行文件,很多种编程语言都可以编写脚本,比如下面就是用java写的一个淘宝秒杀脚本↓

我的天,这么厉害?我这么爱学习的人必须要学一下这门技术,于是我和如花说:“我们一起来学习吧”。

如花:“没毛茨,辣乎乎,安排!!!”

可等我拿出本本,拿出笔准备开始学习的时候,如花又说:“宝,你先学,我打一把王者,玩完这一把我就开始学…”

如花还是如花啊,算了,不等她了,大家跟我一起走进jaba实现淘宝秒杀脚本的世界吧。

步骤

写脚本肯定需要知道步骤是什么,然后才能用代码去复刻下来嘛。Redis集群中数据倾斜问题的产生和解决方案:https://www.yoodb.com/notes/1007.html

1、下载浏览器驱动,这里我用的是chrome浏览器,先看一下自己的版本号,在设置可以看到。

e5a8ea86adea66493065f79b3b3fcb12.png

然后在网站http://chromedriver.storage.googleapis.com/index.html找好对应的版本去下载,我下载的路径保存到了:D:\\JDK\\chromedriver.exe

3875f755a437207839d8f53aeccca33e.png

2、接下来就是设置秒杀时间

3、打开浏览器输入淘宝网址

4、登录账号,进入购物车页面

5、点击选择按钮

6、秒杀时间到了,立刻下单!

操作开始

导入依赖:

<dependency>
      <groupId>org.seleniumhq.selenium</groupId>
      <artifactId>selenium-java</artifactId>
      <version>3.141.59</version>
</dependency>

下面是完整的代码

public void taoBao() throws Exception {
 
        //浏览器驱动路径
        System.setProperty("webdriver.chrome.driver","D:\\JDK\\chromedriver.exe");
 
        //设置秒杀时间
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSSSSSSSS");
        Date date = sdf.parse("2022-04-14 14:07:00 000000000");
 
        //1、打开浏览器
        ChromeDriver browser = new ChromeDriver();
        Actions actions = new Actions(browser);
        //2、输入网址
        browser.get("https://www.taobao.com");
        Thread.sleep(3000);
 
        //3、点击登录
        browser.findElement(By.linkText("亲,请登录")).click();
 
        Thread.sleep(2000);
 
        //4、扫码登录
        browser.findElement(By.className("icon-qrcode")).click();
        Thread.sleep(4000);
 
        //5、进入购物车页面
        browser.get("https://cart.taobao.com/cart.htm");
        Thread.sleep(3000);
 
        //6、点击选择第一个按钮
        browser.findElement(By.xpath("//*[@id=\"J_Order_s_2207407355826_1\"]/div[1]/div/div/label")).click();
 
        Thread.sleep(2000);
        while (true){
            //当前时间
            Date now = new Date();
            System.out.println(now);
            if(now.after(date)){
                if(browser.findElement(By.linkText("结 算")).isEnabled()){
                    browser.findElement(By.linkText("结 算")).click();
                    System.out.println("结算成功");
                    break;
                }
 
            }
        }
 
        Thread.sleep(5000);
    }

这里说一下会遇到的问题:

  1. 这里使用的是扫码登录,需要用手机淘宝扫码进行登录

  2. Thread.sleep(4000);就是系统休息4秒钟,如果扫码登录时间大于4秒会报错,可以根据电脑网速来设置

  3. browser.findElement(By.xpath("xxx")).click();这个是选择购物车第一个商家的所有商品,里面xxx需要更改。当然其他参数怎么修改可以根据这个对应来修改。

进入购物车页面后按F12,然后点左上角那个箭头,然后选择店铺左边的按钮,这样下面代码块就对应到了指定的代码位置。Java技术进阶路线:https://www.yoodb.com/

dc890242fce4216a5c1acaffb653e4cd.png

右键这一行,然后选择copy→Copy XPath,这个XPath就是browser.findElement(By.xpath("xxx")).click();的xxx内容

f96da84a4d21feb7d7a5a6445a12abc6.png

如果以上操作都没有问题,那么你就可以启动程序啦!!成功后你会发现,脚本居然如此简单!!

作者:Java实用技术

https://www.toutiao.com/i6811255093703213582/

公众号“Java精选”所发表内容注明来源的,版权归原出处所有(无法查证版权的或者未注明出处的均来自网络,系转载,转载的目的在于传递更多信息,版权属于原作者。如有侵权,请联系,笔者会第一时间删除处理!
最近有很多人问,有没有读者交流群!加入方式很简单,公众号Java精选,回复“加群”,即可入群!

Java精选面试题(微信小程序):3000+道面试题,包含Java基础、并发、JVM、线程、MQ系列、Redis、Spring系列、Elasticsearch、Docker、K8s、Flink、Spark、架构设计等,在线随时刷题!
------ 特别推荐 ------


特别推荐:专注分享最前沿的技术与资讯,为弯道超车做好准备及各种开源项目与高效率软件的公众号,「大咖笔记」,专注挖掘好东西,非常值得大家关注。点击下方公众号卡片关注。

点击“阅读原文”,了解更多精彩内容!文章有帮助的话,点在看,转发吧!
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值