Created
January 18, 2020 11:00
-
-
Save khaschuluu/ae408396763c2a4bfea9c7e9a34e2b3b to your computer and use it in GitHub Desktop.
yodice
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const puppeteer = require('puppeteer') | |
const stats = require('./stats.json') | |
const fs = require('fs') | |
const { promisify } = require("util") | |
const writeFile = promisify(fs.writeFile) | |
; | |
(async () => { | |
const puppet = await puppeteer.launch({ | |
headless: false, | |
args: [ | |
'-no-sandbox', | |
'--disable-setuid-sandbox', | |
'--disable-dev-shm-usage', | |
'--disable-accelerated-2d-canvas', | |
'--disable-gpu', | |
'--window-size=1070x500' | |
], | |
userDataDir: './userdata' | |
}) | |
page = (await puppet.pages())[0] | |
await page.setViewport({ | |
width: 1070, | |
height: 500 | |
}) | |
await page.setRequestInterception(true); | |
page.on('request', req => { | |
if (req.resourceType() == 'font' || req.resourceType() == 'image') { | |
req.abort() | |
} else { | |
if ( | |
req.url().indexOf('yobit.net/twits/') != -1 || | |
req.url().indexOf('google.com') != -1 || | |
req.url().indexOf('gstatic.com') != -1 || | |
req.url().indexOf('yandex.ru') != -1 | |
) req.abort() | |
else req.continue() | |
} | |
}) | |
var startbet = 0.00001 | |
var bet = startbet | |
var straight_loses_counter = 0 | |
var fail_count = 0 | |
var betinput | |
var starter = async () => { | |
await page.goto('https://yobit.net/en/dice/TRX') | |
var check_only_mine = await page.waitForSelector('#check_only_mine') | |
var is_checked_only_mine = await (await check_only_mine.getProperty('checked')).jsonValue() | |
if (!is_checked_only_mine) { | |
check_only_mine.click() | |
await page.waitForRequest('https://yobit.net/en/dice/') | |
await page.goto('https://yobit.net/en/dice/TRX') | |
} | |
await page.evaluate(() => { | |
var wrap = document.querySelector('.content .wrap') | |
var leftbar = document.querySelector('.left_bar') | |
var rightbar = document.querySelector('.right_bar') | |
var dicepage = document.querySelector('.dice_page') | |
var list = document.querySelector('.list') | |
if (wrap && leftbar && rightbar && dicepage && list) { | |
wrap.removeChild(leftbar) | |
wrap.removeChild(rightbar) | |
dicepage.removeChild(list) | |
} else { | |
throw new Error('page not fully loaded') | |
} | |
}) | |
betinput = await page.waitForSelector('.bet') | |
await better() | |
} | |
var better = async () => { | |
await betinput.click({clickCount: 3}) | |
await betinput.type(bet.toFixed(8)) | |
await (await page.waitForSelector('input[value="Roll < 48"]')).click() | |
var res = await page.waitForResponse('https://yobit.net/ajax/system_dice.php') | |
res = await res.json() | |
fail_count = 0 | |
if (res && res.error) { | |
await (await page.waitForSelector('.messi .btn')).click() | |
await page.waitForSelector('.messi .btn', {hidden: true}) | |
} else { | |
stats.total += 1 | |
if (res.win) { | |
stats.won = parseFloat((stats.won + bet).toFixed(8)) | |
if (straight_loses_counter) { | |
stats.straight_loses[straight_loses_counter] += 1 | |
await writeFile('stats.json', JSON.stringify(stats)) | |
straight_loses_counter = 0 | |
} | |
console.log('won ' + bet) | |
bet = startbet | |
} else { | |
straight_loses_counter += 1 | |
stats.won = parseFloat((stats.won - bet).toFixed(8)) | |
console.log('los ' + bet) | |
if (bet < 0.00064) bet *= 4 | |
else bet *= 2 | |
} | |
} | |
await better() | |
} | |
var start_bet = async () => { | |
try { | |
await starter() | |
} catch (e) { | |
await page.screenshot({path: 'ss.png'}) | |
console.error('eeeero catched', e) | |
fail_count += 1 | |
if (fail_count > 10) console.log('failed') | |
else await start_bet() | |
} | |
} | |
await start_bet() | |
await puppet.close() | |
})() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{"total":26922,"won":1.11766,"straight_loses":[0,3241,1692,911,460,203,94,56,35,15,7,2,4,2,1,0,1,0,0,0,0,0]} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment