Browse Source

use lower case to compare whether or not upcoming or past events exist

fix-broken-scrape
Jørgen Lien Sellæg 6 years ago
parent
commit
6fa42f3b3a
  1. 22
      src/logic.js

22
src/logic.js

@ -252,15 +252,15 @@ const open_browser = async () => {
return browser; return browser;
}; };
const has_upcoming_events = async (page) => const get_body_inner_text = async (page) =>
await page.evaluate( await page.evaluate('document.querySelector("body").innerText;');
'let txt = document.querySelector("body").innerText;txt.includes("Upcoming events") && !txt.includes("not have any upcoming events")',
);
const has_past_events = async (page) => const has_upcoming_events = (body) =>
await page.evaluate( body.includes('upcoming events') &&
'let inner = document.querySelector("body").innerText;inner.includes("Past events") && !inner.includes("not have any past events")', !body.includes('not have any upcoming events');
);
const has_past_events = (body) =>
body.includes('past events') && !body.includes('not have any past events');
const register_page_scraper = (endpoint, page, past_events = false) => { const register_page_scraper = (endpoint, page, past_events = false) => {
let responses = []; let responses = [];
@ -345,10 +345,10 @@ const get_page_events = async (
accept_buttons[0].click(); accept_buttons[0].click();
} }
const past_resolved = const body_text = (await get_body_inner_text(facebook_page)).toLowerCase();
get_past_events && !(await has_past_events(facebook_page)); const past_resolved = get_past_events && !has_past_events(body_text);
const upcoming_resolved = const upcoming_resolved =
get_upcoming_events && !(await has_upcoming_events(facebook_page)); get_upcoming_events && !has_upcoming_events(body_text);
if (past_resolved) { if (past_resolved) {
past_events = Promise.resolve([]); past_events = Promise.resolve([]);

Loading…
Cancel
Save