两天狂揽 4k+ Star,抢茅台脚本霸榜 GitHub
某东抢茅台脚本
在1月份,福宝君在刷 GItHub 的时候,看到热榜上有一个项目jd_seckill,是在某东上抢茅台的 Python 脚本。
这个脚本主要功能为:“自动登录电商平台 -> 定时自动预约茅台 -> 定时开始自动抢购。目前仅支持在某电商平台上抢购飞天茅台,暂不支持其他功能。”
前哨君听朋友说,茅台飞天酒倒一手能获利上千。不得不说,随着茅台的热热,这个抢购脚本软件的 Star 数也是一路飙升。
2月份,这个项目飙升到榜首,一天狂揽 2000 多 Star。
某猫抢茅台脚本
虽然jd_seckill被清空了,今天 GitHub 热榜上又来了一个抢茅台的。 目测这个项目可能又要往前冲榜了。
//定时器
var timer = null;
//检测状态
function checkElementState(path,callback){
var ele = document.querySelector(path);
if(ele){
callback && callback();
}else{
console.log(异步加载元素中.... + path );
setTimeout( function(){checkElementState(path,callback);},200);
}
}
//点击购买按钮
function clickBuy(){
console.log(买!);
//票的数量 如果还不可以购买,这个地方获取会失败
var amount = document.getElementsByClassName(mui-amount-increase)[0];
amount && amount.click(); //+1
var btnBuy = document.querySelector();
}
//结算
function checkOut(){
console.log(结算开始....);
var btn = document.getElementById(J_Go);
if(btn){
btn.click();
}else{
console.log(结算按钮没找到);
}
}
function checkOutAsync(){
checkElementState(#J_Go,checkOut);
}
//提交订单
function submitOrder(){
console.log(提交订单开始....);
checkElementState(.go-btn,function(){
var btn = document.querySelector(".go-btn");
if(btn){
btn.click();
}else{
console.log(提交订单按钮没找到);
}
});
}
//目标时间
var dDate = new Date(); //10点和20点开抢
if( dDate.getHours() < 10 ){
dDate.setHours(9,59,59.2);
}else{
dDate.setHours(19,59,59.2);
}
//dDate.setSeconds( dDate.getSeconds() + 10 );
//进入时间判断循环
function enterTimeCheckLoop(callback){
var date = new Date();
var diff = Date.parse(dDate) - Date.parse(date) ;
console.log(diff);
if(diff < - 900 ){
console.log(时间过了!);
}else if(diff < 500 ) {
callback && callback();
console.log(时间到了!!!);
}else{
setTimeout(function(){ enterTimeCheckLoop(callback);},400);
//console.log(--);
}
}
//主要函数
function main(){
console.log(############################开始抢购茅台############################);
//debugger;
var href = window.location.href;
if(href.indexOf(cart.tmall.com) > -1 ){
//结算页面
//进入时间判断
enterTimeCheckLoop( checkOutAsync );
}else if(href.indexOf(buy.tmall.com) > -1 ){
//提交订单页面
submitOrder();
}
}
main();
