每逢双十一、618是不是有小伙伴总是感叹自己手速不如人呢?明明喜欢的东西下一秒就售罄了,不要怀疑自己的手速,有时候你不知道和你一起下单的是人还是脚本哦。今天我给大家用java写一个简单的秒杀脚本,我们要用魔法打败魔法!话不多说,说干就干。下载浏览器驱动 首先,我们需要知道,java脚本如果需要控制浏览器是需要一个浏览器驱动的,这里我使用的是Chrome浏览器,我们先查看Chrome的版本,在浏览器右上角点击三个点图标帮助关于GoogleChrome可以查看Chrome的版本。这里可以看出我的版本是103。0。5060。114。 然后访问网站http:chromedriver。storage。googleapis。comindex。html下载对应的Chrome的驱动。例如找到103对应的版本点进去,windows使用的是箭头所示的驱动,点击下载。(这里需要提醒一下,访问这个网站需要科学上网,不会科学上网的小伙伴也不用担心,我会把几个常用版本的驱动和一会儿要用的源码放在云盘,有需要可以在评论区自取) 下载完成之后是一个压缩包,我们把它解压,就得到了一个exe程序。 开始写脚本 上面的工作做好之后我们开始写脚本,这里我先新建一个maven项目。如下图,项目名叫做miaosha,点击创建即可。 接下来引入依赖,如下dependencygroupIdorg。seleniumhq。seleniumgroupIdseleniumjavaartifactIdversion3。141。59versiondependency 脚本源码:packagecom。importorg。openqa。selenium。By;importorg。openqa。selenium。chrome。ChromeDimportorg。openqa。selenium。interactions。Aimportjava。text。SimpleDateFimportjava。util。Dpublicclassmiaosha{publicstaticvoidmain(String〔〕args)throwsException{准备驱动System。setProperty(webdriver。chrome。driver,G:driverchromedriver。exe);0、设置秒杀时间SimpleDateFormatsdfnewSimpleDateFormat(yyyyMMddHH:mm:ssSSSSSSSSS);Datedatesdf。parse(2022051514:07:00000000000);1、打开浏览器ChromeDriverbrowsernewChromeDriver();ActionsactionsnewActions(browser);2、输入网址browser。get(https:www。taobao。com);Thread。sleep(3000);3、点击登录browser。findElement(By。linkText(亲,请登录))。click();Thread。sleep(2000);4、扫码登录,线程休息5秒browser。findElement(By。className(iconqrcode))。click();扫码登录Thread。sleep(5000);5、进入购物车页面browser。get(https:cart。taobao。comcart。htm);Thread。sleep(3000);6、点击选择第一个按钮browser。findElement(By。xpath(〔idJOrders2369587371〕p〔1〕pplabel))。click();Thread。sleep(2000);7、循环检查结算按钮,如果倒计时结束,迅速点击while(true){当前时间DatenownewDate();System。out。println(now);if(now。after(date)){if(browser。findElement(By。linkText(结算))。isEnabled()){browser。findElement(By。linkText(结算))。click();System。out。println(结算成功);}}}System。out。println(抢购成功);}} 这里我主要分了一个准备阶段和7个步骤,我们一个一个来看: 首先是准备阶段,我们把刚才下载好的驱动路径复制出来,设置成webdriver。chrome。driver的属性值。 第0步是设置秒杀时间,也就是说我们秒杀的一个开始时间,拿6月18号0点秒杀来举例,我们只需要把时间设置成6月18号0点之前就可以,比如说6月17号23点50。 第1步,打开浏览器。 第2步,输入淘宝的网址,也可以是其他电商网站,我这里用淘宝举例。 第3步,点击登录,这一步的操作是脚本找到页面上亲,请登录的字样点击。 第4步,扫码登录,这一步脚本会点击图中的二维码,我们然后线程休息5秒,我们需要在5秒内扫码登录,时间可以控制,如果你网速好的话可以把时间调短。 第5步,进入购物车页面,这时需要我们提前将想要秒杀的产品放在购物车里面。我这里提前加入了一个小商品。 第6步,点击选择第一个按钮,这一步的作用是脚本点击第一个商品的复选框,这里需要我们自己找到商品复选框的元素,我们先看这一行代码。 browser。findElement(By。xpath())。click(); 代码中的就是我们需要根据自己的情况填入自己商品的一个id号,找的步骤也很简单。如果是前端的小伙伴可以轻易找到,具体步骤是在页面点击鼠标右键,点击检查。 在弹出开发工具中点击左上角箭头,如图所示。 然后点击店铺的复选框。 然后就自动定位到了店铺元素,按照步骤鼠标右键,最后copyXpath,复制好的内容粘贴到上面的所在的地方就可以了! 第7步就是脚本自动执行了,它会轮询结算按钮,如果结算按钮一旦可以点击则立刻点击结算,这样就脚本就完成了,是不是比我们自己点击快多了! 我把源码放在评论区,感兴趣的小伙伴可以试试了!