Added tags to release channels. Labeling DDF Network VR trailers as VR.
This commit is contained in:
parent
8af562e284
commit
15cc970ee2
|
@ -255,7 +255,7 @@ module.exports = {
|
||||||
thumbnailQuality: 100,
|
thumbnailQuality: 100,
|
||||||
lazySize: 90,
|
lazySize: 90,
|
||||||
lazyQuality: 90,
|
lazyQuality: 90,
|
||||||
trailerQuality: [480, 540, 360, 720, 1080, 320, 1440, 1600, 1920, 2160, 270, 240, 180],
|
trailerQuality: [480, 540, 360, 720, 960, 1080, 320, 1440, 1600, 1920, 2160, 270, 240, 180],
|
||||||
limit: 25, // max number of photos per release
|
limit: 25, // max number of photos per release
|
||||||
streamConcurrency: 2, // max number of video streams (m3u8 etc.) to fetch and process at once
|
streamConcurrency: 2, // max number of video streams (m3u8 etc.) to fetch and process at once
|
||||||
},
|
},
|
||||||
|
|
|
@ -1963,6 +1963,7 @@ const sites = [
|
||||||
url: 'https://ddfnetworkvr.com',
|
url: 'https://ddfnetworkvr.com',
|
||||||
description: 'VR Porn Videos shot Exclusively in 180 3D 4K Virtual Reality featuring the Hottest European & American VR Pornstar Babes',
|
description: 'VR Porn Videos shot Exclusively in 180 3D 4K Virtual Reality featuring the Hottest European & American VR Pornstar Babes',
|
||||||
parent: 'pornworld',
|
parent: 'pornworld',
|
||||||
|
tags: ['vr'],
|
||||||
parameters: {
|
parameters: {
|
||||||
latest: 'https://ddfnetworkvr.com/home/tagfiltered/keywords/-/',
|
latest: 'https://ddfnetworkvr.com/home/tagfiltered/keywords/-/',
|
||||||
},
|
},
|
||||||
|
|
|
@ -184,9 +184,18 @@ async function fetchEntitiesBySlug(entitySlugs, sort = 'asc') {
|
||||||
FROM entity_tree
|
FROM entity_tree
|
||||||
JOIN entities ON entity_tree.parent_id = entities.id
|
JOIN entities ON entity_tree.parent_id = entities.id
|
||||||
)
|
)
|
||||||
SELECT jsonb_set(entity, '{children}', to_jsonb(COALESCE(json_agg(children) FILTER (WHERE children.id IS NOT NULL), '[]'))) entity
|
SELECT jsonb_set(
|
||||||
|
jsonb_set(
|
||||||
|
entity,
|
||||||
|
'{children}',
|
||||||
|
to_jsonb(COALESCE(json_agg(children) FILTER (WHERE children.id IS NOT NULL), '[]'))),
|
||||||
|
'{tags}',
|
||||||
|
to_jsonb(COALESCE(json_agg(tags) FILTER (WHERE tags.id IS NOT NULL), '[]'))
|
||||||
|
) entity
|
||||||
FROM entity_tree
|
FROM entity_tree
|
||||||
LEFT JOIN entities AS children ON children.parent_id = (entity->>'id')::int
|
LEFT JOIN entities AS children ON children.parent_id = (entity->>'id')::int
|
||||||
|
LEFT JOIN entities_tags ON entities_tags.entity_id = (entity->>'id')::int
|
||||||
|
LEFT JOIN tags ON tags.id = entities_tags.tag_id
|
||||||
WHERE entity_tree.parent_id IS NULL
|
WHERE entity_tree.parent_id IS NULL
|
||||||
GROUP BY entity_tree.entity
|
GROUP BY entity_tree.entity
|
||||||
ORDER BY entity->'type' :sort;
|
ORDER BY entity->'type' :sort;
|
||||||
|
|
|
@ -27,7 +27,7 @@ function scrapeAll(scenes, site, origin) {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
async function scrapeScene({ query }, url, _site) {
|
async function scrapeScene({ query }, url, channel) {
|
||||||
const release = {};
|
const release = {};
|
||||||
|
|
||||||
release.entryId = url.match(/\/(\d+)$/)[1];
|
release.entryId = url.match(/\/(\d+)$/)[1];
|
||||||
|
@ -55,6 +55,7 @@ async function scrapeScene({ query }, url, _site) {
|
||||||
release.trailer = query.all('source[type="video/mp4"]').map(trailer => ({
|
release.trailer = query.all('source[type="video/mp4"]').map(trailer => ({
|
||||||
src: trailer.src,
|
src: trailer.src,
|
||||||
quality: Number(trailer.attributes.res?.value || trailer.attributes.quality?.value.slice(0, -1)) || null,
|
quality: Number(trailer.attributes.res?.value || trailer.attributes.quality?.value.slice(0, -1)) || null,
|
||||||
|
vr: channel.tags?.some(tag => tag.slug === 'vr'),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
return release;
|
return release;
|
||||||
|
|
Loading…
Reference in New Issue