自己编写小米手机自动购买脚本(仅供个人学习不要商业使用)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
⾃⼰编写⼩⽶⼿机⾃动购买脚本(仅供个⼈学习不要商业使⽤)⾃⼰尝试⽤⽆头浏览器编写购买脚本效果如下:
后续可以深度开发使⽤
const puppeteer = require('puppeteer');
const config = {
user: '⾃⼰⽤户名',
password: '⾃⼰密码',
}
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
(async () => {
const browser = await unch({
headless: false,
defaultViewport: {
width: 1920,
height: 1080
}
});
const page = await browser.newPage();
// Login
await page.goto('https:///',{
waitUntil:'domcontentloaded'
});
await page.waitForSelector('input[name="account"]')
await page.type('input[name="account"]', er.toString());
await page.type('input[name="password"]', config.password);
await page.click('button[type = "submit"]')
const page2 = await browser.newPage();
await page2.goto('https:///buy/detail?product_id=12511', {
waitUntil: 'domcontentloaded'
});
await page2.waitForSelector('.sale-btn')
await page2.click('.sale-btn')
// await page.waitFor(1000);
// await page2.waitForSelector('.sale-btn')
// await page2.click('.sale-btn')
/* await page2.waitForSelector('.btn-primary')
await page2.click('.btn-primary') */
const page3 = await browser.newPage();
await page3.goto('https:///buy/cart', {
waitUntil: 'domcontentloaded'
});
await page3.waitForSelector('.btn-primary')
await page3.click('.btn-primary')
await page3.waitForSelector('.el-dialog__footer .btn-primary')
await page3.click('.el-dialog__footer .btn-primary')
await page3.waitForSelector('.btn-primary')
await page3.click('.btn-primary')
await page3.waitForSelector('.total-price .btn-primary')
await page3.click('.total-price .btn-primary')
const page4 = await browser.newPage();
await page4.goto('https:///buy/checkout', {
waitUntil: 'domcontentloaded'
});
await page4.waitForSelector('.address-item')
await page4.click('.address-item')
await page4.waitForSelector('.address-item')
await page4.click('.address-item')
await page4.waitForSelector('.operating-button a')
await page4.click('.operating-button a')
})();
新的测试框架。