基本上我正在尝试为赌博网站制作自动化脚本。如果您知道轮盘赌游戏模式,那么您现在有大约 20 秒的时间选择颜色,每轮有 10 秒的时间显示结果。我试图做的是为脚本运行一个 while 循环,直到余额达到一定数量。我正在努力使用设置的超时功能每 30 秒进行一次延迟,因此投注机器人可以在每一轮下注,基本上它等待 30 秒然后机器人下注。例子 :
do{
delay 30 seconds amount
run bot()
}while(condition)
当我尝试使用设置超时功能并使用网站上的脚本时,它开始无限下注,整个事情都崩溃了,因为延迟没有正确发生。这是代码:
function Bot(bt, bc)
{
l = ((document.getElementsByClassName("roulette-past-queue--previous-rolls-container horizontal-scroll")[0].innerText).length);
f = document.getElementsByClassName("roulette-past-queue--previous-rolls-container horizontal-scroll")[0].innerText;
number = f[l - 1];
number = parseInt(number.replace(" ", ""));
if (number >= 1 && number <= 7)
{
LastResult = "red";
}
if (number >= 8 && number <= 14)
{
LastResult = "black";
}
if (number == 0)
{
LastResult = "green";
}
if (LastResult == bc)
{
if (bc == "red")
{
document.getElementById('bet-input-r').value = bt;
document.getElementById('roulette-btn-red').click();
}
else
{
document.getElementById('bet-input-r').value = bt;
document.getElementById('roulette-btn-black').click();
}
}
if (LastResult != bc)
{
if (bc == "red")
{
document.getElementById('bet-btn-double-r').click();
document.getElementById('roulette-btn-black').click();
bc = "black"
bt = bt * 2
}
else
{
document.getElementById('bet-btn-double-r').click();
document.getElementById('roulette-btn-red').click();
bc = "red"
bt = bt * 2
}
}
}
balance = document.getElementById('balance').innerHTML;
balance = parseInt(balance.replace(",", ""));
bet = 10
TargetBalance = 99988
document.getElementById('bet-input-r').value = bet;
betcolor = "black";
if (betcolor == "red")
{
document.getElementById('roulette-btn-red').click();
}
else
{
document.getElementById('roulette-btn-black').click();
}
//this is the looping part causing the problem i have deleted setTimout so you can see what i mean clearly
do
{
// 30 seconds delay
Bot(bet, betcolor)
}
while (balance < TargetBalance && balance > bet)
这将是最简单的方法,但您必须删除循环,否则,您将收到 gazzilion 调用。在Bot
函数的末尾添加此检查。
if(balance < TargetBalance && balance > bet) {
setTimeout(() => {
Bot(bet, betcolor)
}, 30000); // Expects ms, so 1000 * 30
}
还有另一种使用async/await
. 首先创建一个延迟函数:
function delay(){
return new Promise((resolve) => {
setTimeout(() => resolve(), 1000)
});
}
之后,使用 await 就可以了。请注意,要使用它,范围必须是异步的。
async function main() {
for(let i = 0; i < 5; i++) {
console.log(i);
await delay();
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句