Using Cherry Pimps scene page poster as photo if base release has poster.

This commit is contained in:
DebaucheryLibrarian 2026-01-11 23:46:38 +01:00
parent 5161519bb3
commit d855100770
1 changed files with 10 additions and 4 deletions

View File

@ -46,7 +46,7 @@ async function fetchLatest(channel, page = 1) {
return res.status;
}
function scrapeScene({ query }, url) {
function scrapeScene({ query }, url, _channel, baseRelease) {
const release = { url };
const { pathname } = new URL(url);
@ -71,22 +71,28 @@ function scrapeScene({ query }, url) {
release.tags = query.contents('.update-info-block a[href*="categories/"]');
release.poster = [
const poster = [
query.img('.update_thumb', { attribute: 'src0_3x' }),
query.img('.update_thumb', { attribute: 'src0_2x' }),
query.img('.update_thumb', { attribute: 'src0_1x' }), // usually only this one available
].filter(Boolean);
if (baseRelease?.poster) { // different poster on homepage, preserve
release.photos = [poster];
} else {
release.poster = poster;
}
// faux video trailer player redirects to signup
return release;
}
async function fetchScene(url, site, release) {
async function fetchScene(url, channel, baseRelease) {
const res = await unprint.get(url);
if (res.ok) {
return scrapeScene(res.context, url, site, release);
return scrapeScene(res.context, url, channel, baseRelease);
}
return res.status;