From c81580366ba5a26342cb38fbb6ce562180b72c49 Mon Sep 17 00:00:00 2001 From: Thomas <4159106+dtslvr@users.noreply.github.com> Date: Mon, 14 Mar 2022 20:42:04 +0100 Subject: [PATCH] Improve handling of missing scraper configuration --- .../ghostfolio-scraper-api.service.ts | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/apps/api/src/services/data-provider/ghostfolio-scraper-api/ghostfolio-scraper-api.service.ts b/apps/api/src/services/data-provider/ghostfolio-scraper-api/ghostfolio-scraper-api.service.ts index 35c53bc7a..bd126e235 100644 --- a/apps/api/src/services/data-provider/ghostfolio-scraper-api/ghostfolio-scraper-api.service.ts +++ b/apps/api/src/services/data-provider/ghostfolio-scraper-api/ghostfolio-scraper-api.service.ts @@ -50,16 +50,18 @@ export class GhostfolioScraperApiService implements DataProviderInterface { const [symbolProfile] = await this.symbolProfileService.getSymbolProfiles( [symbol] ); - const scraperConfiguration = symbolProfile?.scraperConfiguration; + const { selector, url } = symbolProfile.scraperConfiguration; - const get = bent(scraperConfiguration?.url, 'GET', 'string', 200, {}); + if (selector === undefined || url === undefined) { + return {}; + } + + const get = bent(url, 'GET', 'string', 200, {}); const html = await get(); const $ = cheerio.load(html); - const value = this.extractNumberFromString( - $(scraperConfiguration?.selector).text() - ); + const value = this.extractNumberFromString($(selector).text()); return { [symbol]: {