자바스크립트 동원복권 매크로
동원복권, 매크로
1년치인 예치금을 30만원 넣어두고 오토로 돌리고 있다.
코드가 필요하신 분들이 있을거같아 공유한다.
const axios = require('axios');
const qs = require('querystring');
const puppeteer = require("puppeteer")
const dhlotteryBuy646 = async (userId, password) => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
// 페이지 이동
await page.goto('https://dhlottery.co.kr/user.do?method=login');
// 아이디와 비밀번호 입력
await page.type('[placeholder="아이디"]', userId);
await page.type('[placeholder="비밀번호"]', password);
// 로그인 버튼 클릭 및 네비게이션 대기
await Promise.all([
page.waitForNavigation(), // The promise resolves after navigation has finished
page.keyboard.press('Enter'),
]);
await page.goto('https://ol.dhlottery.co.kr/olotto/game/game645.do');
// 번호 선택 및 자동 선택 클릭
await page.click('#num2');
// 구매할 개수 선택
await page.select('#amoundApply', '5');
// 구매하기 클릭
await page.click('text=확인');
await page.click('#btnBuy');
// 구매 확인 대화 상자에서 확인 클릭
await page.waitForTimeout(2000);
await page.click('#popupLayerConfirm > div > div.btns > input:nth-child(1)');
// 브라우저 종료
await browser.close();
};
module.exports = {
dhlotteryBuy646
};
만약 도커화시켜서 매크로를 돌리는 분은 game645.do 부분에 click 코드를 추가한다.
await page.goto('https://ol.dhlottery.co.kr/olotto/game/game645.do');
await page.click('#popupLayerAlert > div > div.btns > input');
js 구문에 다음과 같은 코드가 있다. Linux로 들어가는 경우 비정상적인 방법으로 접속되었다는 팝업이 출력한다.
if (navigator.platform && /win16|win32|win64|mac/ig.test(navigator.platform) == false) {
openLayerAlert('비정상적인 방법으로 접속하였습니다. 정상적인 PC 환경에서 접속하여 주시기 바랍니다.', parentClose);
}