diff --git a/scrape.js b/scrape.js index 4164150..eaf9f2e 100644 --- a/scrape.js +++ b/scrape.js @@ -115,8 +115,7 @@ const get_event_host = (event) => const edge_to_node = (edge) => edge.node; -const map_event = (edge) => { - const event = edge.node; +const map_event = ({ node: event }) => { const ticket_url = pathOr('', ['event_buy_ticket_url'], event); const city = get_city_name(event); const host = get_event_host(event); @@ -211,6 +210,32 @@ const register_upcoming_events_listener = (endpoint, page) => { (res, current) => [...res, ...current.edges], [], ); + const new_events = nodes.map(map_event); + + events = merge_edges(new_events, events); + + events = await Promise.all( + events.map(async (event) => { + const event_page = await browser.newPage(); + const event_data = await load_event(event_page, event.event_id); + return { + ...event_data, + ...event, + }; + }), + ); } + + events = await Promise.all( + events.map(async (event) => { + const images = await save_images(event); + delete event.image; + return { + images, + ...event, + }; + }), + ); + console.log(JSON.stringify(events)); })();