Update cardbot.js (#5)

This commit is contained in:
malbert69
2020-09-17 19:55:30 -05:00
committed by GitHub
parent 32768fa74e
commit dcfc03cdc8
+44 -7
View File
@@ -6,8 +6,31 @@
const puppeteer = require("puppeteer") const puppeteer = require("puppeteer")
const opn = require("opn") const opn = require("opn")
const nodemailer = require("nodemailer");
const timeout = 3000; const timeout = 5000;
const waitForTimeout = 1000;
const cartLink =
"https://store.nvidia.com/store/nvidia/en_US/buy/productID.5438481700/clearCart.yes/nextPage.QuickBuyCartPage";
const emailUsername = process.env.EMAIL_USERNAME;
const emailPassword = process.env.EMAIL_PASSWORD;
const transporter = nodemailer.createTransport({
service: "gmail",
auth: {
user: emailUsername,
pass: emailPassword,
},
});
const mailOptions = {
from: emailUsername,
to: emailUsername,
subject: "NVIDIA - BUY NOW",
text: cartLink,
};
async function buy() { async function buy() {
const links = [ const links = [
@@ -44,16 +67,30 @@ async function goto(link) {
console.log(dom) console.log(dom)
if (dom.body.toLowerCase().includes("out of stock") || dom.body.toLowerCase().includes(link.oosText.toLowerCase()) ) { if (dom.body.toLowerCase().includes(link.oosText.toLowerCase()) ) {
console.log(link.name + " is still out of stock... Attempting next link.") console.log(link.name + " is still out of stock... Attempting next link.")
} else { } else {
console.log("*** IN STOCK AT " + link.name.toUpperCase() + " , BUY NOW ***") console.log("*** IN STOCK AT " + link.name.toUpperCase() + ", BUY NOW ***");
opn(link) await page.screenshot({ path: `nvidia-${Date.now()}.png` });
opn(cartLink);
if (emailUsername && emailPassword) {
transporter.sendMail(mailOptions, function (error, info) {
if (error) {
console.log(error);
} else {
console.log("email sent: " + info.response);
}
});
}
} }
await page.screenshot({ path: `nvidia-${Date.now()}.png` })
await browser.close() await browser.close()
} }
buy().then() try{
buy().then();
}
catch(error)
{
buy();
}