Skip to content

Instantly share code, notes, and snippets.

View anthonyjdella's full-sized avatar
:octocat:
git a life

offline anthonyjdella

:octocat:
git a life
View GitHub Profile
run().then((value) => {
let data = value.join("\r\n");
console.log(data);
fs.writeFile("state-farm-jobs.txt", data, function (err) {
console.log(constants.SUCCESS_STMT);
});
console.log("scrape-state-farm.js - created txt file")
emailModule();
});
const stateFarmModule = require("./scrape-state-farm.js");
const emailModule = require("./send-email.js");
stateFarmModule();
const transporter = nodemailer.createTransport(smtpTransport({
service: 'Gmail',
host: 'smtp.gmail.com',
port: 465,
auth: {
user: credentials.email,
pass: credentials.password
}
}));
run().then((value) => {
let data = value.join("\r\n");
console.log(data);
fs.writeFile("state-farm-jobs.txt", data, function (err) {
console.log(constants.SUCCESS_STMT);
});
});
browser.close();
return arrayJobResults;
}
if (numPages != 1) {
await page.click(constants.STATE_FARM_NEXT_PAGE_SELECTOR);
await page.waitFor(2000);
}
}
for (let i = 1; i <= jobListLength; i++) {
let jobSelector = LIST_JOB_SELECTOR.replace("INDEX", i)
let jobListing = await page.evaluate((sel) => {
return document.querySelector(sel).innerText;
}, jobSelector);
arrayJobResults.push(jobListing);
}
let jobListLength = await page.evaluate((sel) => {
let jobSelectorID = document.getElementById(sel);
let jobSelectorTagName = jobSelectorID.getElementsByTagName("li");
return jobSelectorTagName.length;
}, JOB_SELECTOR_ID);
for (let h = 1; h <= numPages; h++) {
console.log("Page Number : " + h);
let jobListLength = await page.evaluate((sel) => {
let jobSelectorID = document.getElementById(sel);
let jobSelectorTagName = jobSelectorID.getElementsByTagName("li");
return jobSelectorTagName.length;
}, JOB_SELECTOR_ID);
for (let i = 1; i <= jobListLength; i++) {
let jobSelector = LIST_JOB_SELECTOR.replace("INDEX", i)
async function getNumPages(page) {
const PAGE_CONTAINTER_SELECTOR = constants.STATE_FARM_PAGE_CONTAINTER_SELECTOR;
let pageCount = await page.evaluate((sel) => {
let defaultCount = 1;
let pageContainer = document.querySelector(sel);
let allPages = pageContainer.getElementsByClassName("pagerLink");
if (allPages.length > 0) {
return allPages.length;
}
else {