minor changes

main
saif 2025-02-07 14:55:31 +05:00
parent e8eff97e8c
commit efd4451fc2
1 changed files with 45 additions and 49 deletions

View File

@ -59,7 +59,7 @@ const utils = require("./utils");
utils.getBrowserConfig(chromeProfilePath, environment) utils.getBrowserConfig(chromeProfilePath, environment)
); );
const page = await browser.newPage(); const page = await browser.newPage();
// await loadPageCookies(page); // await loadPageCookies(page);
await page.setViewport({ await page.setViewport({
width: 1600, width: 1600,
height: 900, height: 900,
@ -204,8 +204,8 @@ const utils = require("./utils");
*/ */
const downloadAndUploadShippingLabels = async (page) => { const downloadAndUploadShippingLabels = async (page) => {
try { try {
if ( page.isClosed() ) { if (page.isClosed()) {
console.log("Page Closed !!") console.log("Page Closed !!");
} }
let bIndex = 0; let bIndex = 0;
// PO Selector // PO Selector
@ -341,67 +341,63 @@ const utils = require("./utils");
console.log(`Total Pages count : ${total_pages}`); console.log(`Total Pages count : ${total_pages}`);
while (true) { while (true) {
try { // update state
// update state // await updateState(currentPage, luxon.DateTime.now().toISO());
// await updateState(currentPage, luxon.DateTime.now().toISO()); console.log(`Crawling for page ${currentPage}`);
console.log(`Crawling for page ${currentPage}`);
await new Promise((resolve) => setTimeout(resolve, 2_000)); await new Promise((resolve) => setTimeout(resolve, 2_000));
await utils.tryTemuLogin(page, email, password, loginPage); await utils.tryTemuLogin(page, email, password, loginPage);
await new Promise((resolve) => setTimeout(resolve, 4_000)); await new Promise((resolve) => setTimeout(resolve, 4_000));
// load cookies // load cookies
await loadPageCookies(page); await loadPageCookies(page);
// get labels from page // get labels from page
await downloadAndUploadShippingLabels(page); await downloadAndUploadShippingLabels(page);
// await new Promise((resolve) => setTimeout(resolve, 20_000)); // await new Promise((resolve) => setTimeout(resolve, 20_000));
// increment page // increment page
++currentPage; ++currentPage;
// Evaluate the presence of both classes in the <li> element // Evaluate the presence of both classes in the <li> element
const hasNextBtn = await page.evaluate(() => { const hasNextBtn = await page.evaluate(() => {
const liElement = document.querySelector( const liElement = document.querySelector(
"li.PGT_next_123.PGT_disabled_123" "li.PGT_next_123.PGT_disabled_123"
); );
return liElement == null; return liElement == null;
}); });
// break if doesn't have next button // break if doesn't have next button
if (!hasNextBtn) { if (!hasNextBtn) {
console.log("No next button"); console.log("No next button");
break; break;
}
if (currentPage > maxPage || currentPage > total_pages) {
console.log("Last Page Reached");
break;
}
// goto next page
if (hasNextBtn) {
await page.evaluate(() => {
const liElement = document.querySelector("li.PGT_next_123");
if (liElement) {
liElement.click();
}
});
}
// wait
await new Promise((r) => setTimeout(r, 5000));
} catch (e) {
console.log(e);
} }
if (currentPage > maxPage || currentPage > total_pages) {
console.log("Last Page Reached");
break;
}
// goto next page
if (hasNextBtn) {
await page.evaluate(() => {
const liElement = document.querySelector("li.PGT_next_123");
if (liElement) {
liElement.click();
}
});
}
// wait
await new Promise((r) => setTimeout(r, 5000));
} }
} catch (e) { } catch (e) {
console.log(e); console.log(e);
} }
// update state // update state
await updateState(1, luxon.DateTime.now().toISO()); // await updateState(1, luxon.DateTime.now().toISO());
console.log( console.log(
`==========< ENDED --- DOWNLOAD SHIPPING LABELS ${luxon.DateTime.now()} >==========` `==========< ENDED --- DOWNLOAD SHIPPING LABELS ${luxon.DateTime.now()} >==========`