From b00b8f4a96ed1194b9e67a9c0a752150e609387a Mon Sep 17 00:00:00 2001 From: DebaucheryLibrarian Date: Mon, 4 Apr 2022 23:56:26 +0200 Subject: [PATCH] Using channel URL for Dogfart photos and network URL as fallback. --- src/scrapers/dogfart.js | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/src/scrapers/dogfart.js b/src/scrapers/dogfart.js index d879f3f6..e17ec812 100644 --- a/src/scrapers/dogfart.js +++ b/src/scrapers/dogfart.js @@ -3,7 +3,7 @@ const slugify = require('../utils/slugify'); const qu = require('../utils/qu'); -async function getPhotos(albumUrl) { +async function getPhotos(albumUrl, channel) { const res = await qu.get(albumUrl); if (!res.ok) { @@ -14,12 +14,21 @@ async function getPhotos(albumUrl) { const lastPhotoIndex = parseInt(lastPhotoPage.match(/\d+.jpg/)[0], 10); const photoUrls = Array.from({ length: lastPhotoIndex }, (value, index) => { - const pageUrl = `https://blacksonblondes.com${lastPhotoPage.replace(/\d+.jpg/, `${(index + 1).toString().padStart(3, '0')}.jpg`)}`; + const pageUrl = `${channel.url}${lastPhotoPage.replace(/\d+.jpg/, `${(index + 1).toString().padStart(3, '0')}.jpg`)}`; + const networkPageUrl = `https://dogfartnetwork.com${lastPhotoPage.replace('tourx', 'tour').replace(/\d+.jpg/, `${(index + 1).toString().padStart(3, '0')}.jpg`)}`; - return { - url: pageUrl, - extract: ({ query }) => query.img('.scenes-module img'), - }; + const extract = ({ query }) => query.img('.scenes-module img'); + + return [ + { + url: pageUrl, + extract, + }, + { + url: networkPageUrl, + extract, + }, + ]; }); return photoUrls; @@ -90,6 +99,8 @@ async function scrapeScene({ query }, url, channel, baseScene, parameters) { release.stars = Number(((query.number('span[itemprop="average"], span[itemprop="ratingValue"]') || query.number('canvas[data-score]', null, 'data-score')) / 2).toFixed(2)); + console.log(release.photos); + return release; }