From 454d471242f9937d9bc11ef14095ca0b00164cf8 Mon Sep 17 00:00:00 2001 From: KirianCaumes Date: Fri, 5 Jan 2024 21:30:27 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20Fix=20malformed=20url=20with=20b?= =?UTF-8?q?rowser=20strategy?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/marketplace.ts | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/src/marketplace.ts b/src/marketplace.ts index 1876637..1a69fdb 100644 --- a/src/marketplace.ts +++ b/src/marketplace.ts @@ -360,11 +360,17 @@ export default abstract class Marketplace { const countryName = el.querySelector('.seller_info li:nth-child(3)')?.textContent?.split(':')?.pop() ?? '' const countryCode = COUNTRIES[countryName as keyof typeof COUNTRIES] const releaseId = Number.parseInt( - el.querySelector('a.item_release_link')?.href.split('release/')?.pop()?.split('-')?.shift() ?? '0', + el + .querySelector('a.item_release_link') + ?.getAttribute('href') + ?.split('release/') + ?.pop() + ?.split('-') + ?.shift() ?? '0', 10, ) const itemId = Number.parseInt( - el.querySelector('a.item_description_title')?.href?.split('/').pop() ?? '0', + el.querySelector('a.item_description_title')?.getAttribute('href')?.split('/').pop() ?? '0', 10, ) const notes = Number.parseInt( @@ -395,7 +401,9 @@ export default abstract class Marketplace { ? originalTitle?.substring(lastIndexOfParenthesis + 2, originalTitle.length - 1)?.split(', ') ?? [] : [], }, - url: `https://www.discogs.com${el.querySelector('a.item_description_title')?.href}`, + url: `https://www.discogs.com${el + .querySelector('a.item_description_title') + ?.getAttribute('href')}`, labels: [...el.querySelectorAll(".label_and_cat a[href^='https://www.discogs.com/']")] ?.map(x => x?.textContent ?? '') ?.filter((value, index, self) => self.indexOf(value) === index), @@ -432,7 +440,7 @@ export default abstract class Marketplace { }, seller: { name: el.querySelector('.seller_info a')?.textContent ?? '', - url: `https://www.discogs.com${el.querySelector('.seller_info a')?.href}`, + url: `https://www.discogs.com${el.querySelector('.seller_info a')?.getAttribute('href')}`, score: el.querySelector('.seller_info li:nth-child(2) strong')?.textContent ?? '', notes: Number.isNaN(notes) ? 0 : notes, }, @@ -450,7 +458,7 @@ export default abstract class Marketplace { }, release: { id: Number.isNaN(releaseId) ? 0 : releaseId, - url: `https://www.discogs.com${el.querySelector('a.item_release_link')?.href}`, + url: `https://www.discogs.com${el.querySelector('a.item_release_link')?.getAttribute('href')}`, }, } }) || [],