开场白
我的室友如花是个貌美如花的黄花大闺女,这不是放假,大家都在宿舍幻想未来,只有如花在睡觉,突然,如花原地炸起,说了一句:“我要学习用java写一个淘宝秒杀脚本!!!”
大家一脸茫然的看着如花,脚本是什么?我赶紧上网查了一下。
脚本是利用某种固定的描述性语言,根据一定的格式编写的可执行文件,很多种编程语言都可以编写脚本,比如下面就是用java写的一个淘宝秒杀脚本↓
我的天,这么厉害?我这么爱学习的人必须要学一下这门技术,于是我和如花说:“我们一起来学习吧”。
如花:“没毛茨,辣乎乎,安排!!!”
可等我拿出本本,拿出笔准备开始学习的时候,如花又说:“宝,你先学,我打一把王者,玩完这一把我就开始学…”
如花还是如花啊,算了,不等她了,大家跟我一起走进jaba实现淘宝秒杀脚本的世界吧。
步骤
写脚本肯定需要知道步骤是什么,然后才能用代码去复刻下来嘛。Redis集群中数据倾斜问题的产生和解决方案:https://www.yoodb.com/notes/1007.html
1、下载浏览器驱动,这里我用的是chrome浏览器,先看一下自己的版本号,在设置可以看到。
然后在网站http://chromedriver.storage.googleapis.com/index.html
找好对应的版本去下载,我下载的路径保存到了:D:\\JDK\\chromedriver.exe
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);
}
这里说一下会遇到的问题:
这里使用的是扫码登录,需要用手机淘宝扫码进行登录
Thread.sleep(4000);
就是系统休息4秒钟,如果扫码登录时间大于4秒会报错,可以根据电脑网速来设置browser.findElement(By.xpath("xxx")).click();
这个是选择购物车第一个商家的所有商品,里面xxx需要更改。当然其他参数怎么修改可以根据这个对应来修改。
进入购物车页面后按F12,然后点左上角那个箭头,然后选择店铺左边的按钮,这样下面代码块就对应到了指定的代码位置。Java技术进阶路线:https://www.yoodb.com/
右键这一行,然后选择copy→Copy XPath
,这个XPath就是browser.findElement(By.xpath("xxx")).click();
的xxx内容
如果以上操作都没有问题,那么你就可以启动程序啦!!成功后你会发现,脚本居然如此简单!!
作者:Java实用技术
https://www.toutiao.com/i6811255093703213582/
公众号“Java精选”所发表内容注明来源的,版权归原出处所有(无法查证版权的或者未注明出处的均来自网络,系转载,转载的目的在于传递更多信息,版权属于原作者。如有侵权,请联系,笔者会第一时间删除处理!
最近有很多人问,有没有读者交流群!加入方式很简单,公众号Java精选,回复“加群”,即可入群!
Java精选面试题(微信小程序):3000+道面试题,包含Java基础、并发、JVM、线程、MQ系列、Redis、Spring系列、Elasticsearch、Docker、K8s、Flink、Spark、架构设计等,在线随时刷题!
------ 特别推荐 ------
特别推荐:专注分享最前沿的技术与资讯,为弯道超车做好准备及各种开源项目与高效率软件的公众号,「大咖笔记」,专注挖掘好东西,非常值得大家关注。点击下方公众号卡片关注。
点击“阅读原文”,了解更多精彩内容!文章有帮助的话,点在看,转发吧!