diff --git a/public/img/logos/spizoo/firstclasspov.png b/public/img/logos/spizoo/firstclasspov.png new file mode 100644 index 00000000..69365883 Binary files /dev/null and b/public/img/logos/spizoo/firstclasspov.png differ diff --git a/public/img/logos/spizoo/lazy/favicon.png b/public/img/logos/spizoo/lazy/favicon.png new file mode 100644 index 00000000..e892f541 Binary files /dev/null and b/public/img/logos/spizoo/lazy/favicon.png differ diff --git a/public/img/logos/spizoo/lazy/favicon_dark.png b/public/img/logos/spizoo/lazy/favicon_dark.png new file mode 100644 index 00000000..41e8cb1d Binary files /dev/null and b/public/img/logos/spizoo/lazy/favicon_dark.png differ diff --git a/public/img/logos/spizoo/lazy/favicon_light.png b/public/img/logos/spizoo/lazy/favicon_light.png new file mode 100644 index 00000000..e892f541 Binary files /dev/null and b/public/img/logos/spizoo/lazy/favicon_light.png differ diff --git a/public/img/logos/spizoo/lazy/firstclasspov.png b/public/img/logos/spizoo/lazy/firstclasspov.png new file mode 100644 index 00000000..d339afde Binary files /dev/null and b/public/img/logos/spizoo/lazy/firstclasspov.png differ diff --git a/public/img/logos/spizoo/lazy/intimatelesbians.png b/public/img/logos/spizoo/lazy/intimatelesbians.png index 922cba37..1d9aeb79 100644 Binary files a/public/img/logos/spizoo/lazy/intimatelesbians.png and b/public/img/logos/spizoo/lazy/intimatelesbians.png differ diff --git a/public/img/logos/spizoo/lazy/mrluckypov.png b/public/img/logos/spizoo/lazy/mrluckypov.png new file mode 100644 index 00000000..c193b3cd Binary files /dev/null and b/public/img/logos/spizoo/lazy/mrluckypov.png differ diff --git a/public/img/logos/spizoo/lazy/mrluckyraw.png b/public/img/logos/spizoo/lazy/mrluckyraw.png new file mode 100644 index 00000000..6510bf3e Binary files /dev/null and b/public/img/logos/spizoo/lazy/mrluckyraw.png differ diff --git a/public/img/logos/spizoo/lazy/mrluckyvip.png b/public/img/logos/spizoo/lazy/mrluckyvip.png new file mode 100644 index 00000000..37da6d72 Binary files /dev/null and b/public/img/logos/spizoo/lazy/mrluckyvip.png differ diff --git a/public/img/logos/spizoo/lazy/network.png b/public/img/logos/spizoo/lazy/network.png index c2387926..9398f4bb 100644 Binary files a/public/img/logos/spizoo/lazy/network.png and b/public/img/logos/spizoo/lazy/network.png differ diff --git a/public/img/logos/spizoo/lazy/porngoespro.png b/public/img/logos/spizoo/lazy/porngoespro.png index 8c6881ee..bdab43c4 100644 Binary files a/public/img/logos/spizoo/lazy/porngoespro.png and b/public/img/logos/spizoo/lazy/porngoespro.png differ diff --git a/public/img/logos/spizoo/lazy/pornstartease.png b/public/img/logos/spizoo/lazy/pornstartease.png index 843f3b4f..764b27ef 100644 Binary files a/public/img/logos/spizoo/lazy/pornstartease.png and b/public/img/logos/spizoo/lazy/pornstartease.png differ diff --git a/public/img/logos/spizoo/lazy/rawattack.png b/public/img/logos/spizoo/lazy/rawattack.png new file mode 100644 index 00000000..7fcbb663 Binary files /dev/null and b/public/img/logos/spizoo/lazy/rawattack.png differ diff --git a/public/img/logos/spizoo/lazy/realsensual.png b/public/img/logos/spizoo/lazy/realsensual.png new file mode 100644 index 00000000..18cf4642 Binary files /dev/null and b/public/img/logos/spizoo/lazy/realsensual.png differ diff --git a/public/img/logos/spizoo/lazy/spizoo.png b/public/img/logos/spizoo/lazy/spizoo.png index 9aad791b..9398f4bb 100644 Binary files a/public/img/logos/spizoo/lazy/spizoo.png and b/public/img/logos/spizoo/lazy/spizoo.png differ diff --git a/public/img/logos/spizoo/lazy/thestripperexperience.png b/public/img/logos/spizoo/lazy/thestripperexperience.png index 1bc39412..114803f5 100644 Binary files a/public/img/logos/spizoo/lazy/thestripperexperience.png and b/public/img/logos/spizoo/lazy/thestripperexperience.png differ diff --git a/public/img/logos/spizoo/lazy/vlogxxx.png b/public/img/logos/spizoo/lazy/vlogxxx.png new file mode 100644 index 00000000..78e51dcf Binary files /dev/null and b/public/img/logos/spizoo/lazy/vlogxxx.png differ diff --git a/public/img/logos/spizoo/misc/first-class-pov.svg b/public/img/logos/spizoo/misc/first-class-pov.svg new file mode 100644 index 00000000..fc5f8ed9 --- /dev/null +++ b/public/img/logos/spizoo/misc/first-class-pov.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/public/img/logos/spizoo/misc/mr-lucky-pov.svg b/public/img/logos/spizoo/misc/mr-lucky-pov.svg new file mode 100644 index 00000000..b87c635f --- /dev/null +++ b/public/img/logos/spizoo/misc/mr-lucky-pov.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/img/logos/spizoo/misc/mr-lucky-raw.svg b/public/img/logos/spizoo/misc/mr-lucky-raw.svg new file mode 100644 index 00000000..063caa06 --- /dev/null +++ b/public/img/logos/spizoo/misc/mr-lucky-raw.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/public/img/logos/spizoo/misc/mr-lucky-vip.svg b/public/img/logos/spizoo/misc/mr-lucky-vip.svg new file mode 100644 index 00000000..0ed354cc --- /dev/null +++ b/public/img/logos/spizoo/misc/mr-lucky-vip.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/public/img/logos/spizoo/misc/mr-lucky-vip_dark.png b/public/img/logos/spizoo/misc/mr-lucky-vip_dark.png new file mode 100644 index 00000000..f6eef8b0 Binary files /dev/null and b/public/img/logos/spizoo/misc/mr-lucky-vip_dark.png differ diff --git a/public/img/logos/spizoo/misc/mr-lucky-vip_light.png b/public/img/logos/spizoo/misc/mr-lucky-vip_light.png new file mode 100644 index 00000000..ede35bef Binary files /dev/null and b/public/img/logos/spizoo/misc/mr-lucky-vip_light.png differ diff --git a/public/img/logos/spizoo/misc/raw-attack.svg b/public/img/logos/spizoo/misc/raw-attack.svg new file mode 100644 index 00000000..17fd90dc --- /dev/null +++ b/public/img/logos/spizoo/misc/raw-attack.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/img/logos/spizoo/misc/real-sensual.svg b/public/img/logos/spizoo/misc/real-sensual.svg new file mode 100644 index 00000000..51afe4d0 --- /dev/null +++ b/public/img/logos/spizoo/misc/real-sensual.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/img/logos/spizoo/misc/vlog-xxx.svg b/public/img/logos/spizoo/misc/vlog-xxx.svg new file mode 100644 index 00000000..f419d706 --- /dev/null +++ b/public/img/logos/spizoo/misc/vlog-xxx.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/public/img/logos/spizoo/mrluckypov.png b/public/img/logos/spizoo/mrluckypov.png new file mode 100644 index 00000000..f2888e46 Binary files /dev/null and b/public/img/logos/spizoo/mrluckypov.png differ diff --git a/public/img/logos/spizoo/mrluckyraw.png b/public/img/logos/spizoo/mrluckyraw.png new file mode 100644 index 00000000..878a13b7 Binary files /dev/null and b/public/img/logos/spizoo/mrluckyraw.png differ diff --git a/public/img/logos/spizoo/mrluckyvip.png b/public/img/logos/spizoo/mrluckyvip.png new file mode 100644 index 00000000..bf5a5a14 Binary files /dev/null and b/public/img/logos/spizoo/mrluckyvip.png differ diff --git a/public/img/logos/spizoo/rawattack.png b/public/img/logos/spizoo/rawattack.png new file mode 100644 index 00000000..cf563b16 Binary files /dev/null and b/public/img/logos/spizoo/rawattack.png differ diff --git a/public/img/logos/spizoo/realsensual.png b/public/img/logos/spizoo/realsensual.png new file mode 100644 index 00000000..a34c40ef Binary files /dev/null and b/public/img/logos/spizoo/realsensual.png differ diff --git a/public/img/logos/spizoo/thumbs/favicon.png b/public/img/logos/spizoo/thumbs/favicon.png new file mode 100644 index 00000000..e892f541 Binary files /dev/null and b/public/img/logos/spizoo/thumbs/favicon.png differ diff --git a/public/img/logos/spizoo/thumbs/favicon_dark.png b/public/img/logos/spizoo/thumbs/favicon_dark.png new file mode 100644 index 00000000..41e8cb1d Binary files /dev/null and b/public/img/logos/spizoo/thumbs/favicon_dark.png differ diff --git a/public/img/logos/spizoo/thumbs/favicon_light.png b/public/img/logos/spizoo/thumbs/favicon_light.png new file mode 100644 index 00000000..e892f541 Binary files /dev/null and b/public/img/logos/spizoo/thumbs/favicon_light.png differ diff --git a/public/img/logos/spizoo/thumbs/firstclasspov.png b/public/img/logos/spizoo/thumbs/firstclasspov.png new file mode 100644 index 00000000..6531e1a6 Binary files /dev/null and b/public/img/logos/spizoo/thumbs/firstclasspov.png differ diff --git a/public/img/logos/spizoo/thumbs/intimatelesbians.png b/public/img/logos/spizoo/thumbs/intimatelesbians.png index f1100dd7..a00440fe 100644 Binary files a/public/img/logos/spizoo/thumbs/intimatelesbians.png and b/public/img/logos/spizoo/thumbs/intimatelesbians.png differ diff --git a/public/img/logos/spizoo/thumbs/mrluckypov.png b/public/img/logos/spizoo/thumbs/mrluckypov.png new file mode 100644 index 00000000..c408fe6b Binary files /dev/null and b/public/img/logos/spizoo/thumbs/mrluckypov.png differ diff --git a/public/img/logos/spizoo/thumbs/mrluckyraw.png b/public/img/logos/spizoo/thumbs/mrluckyraw.png new file mode 100644 index 00000000..19813eb3 Binary files /dev/null and b/public/img/logos/spizoo/thumbs/mrluckyraw.png differ diff --git a/public/img/logos/spizoo/thumbs/mrluckyvip.png b/public/img/logos/spizoo/thumbs/mrluckyvip.png new file mode 100644 index 00000000..0c248cf8 Binary files /dev/null and b/public/img/logos/spizoo/thumbs/mrluckyvip.png differ diff --git a/public/img/logos/spizoo/thumbs/network.png b/public/img/logos/spizoo/thumbs/network.png index 02c4fdf2..fb004516 100644 Binary files a/public/img/logos/spizoo/thumbs/network.png and b/public/img/logos/spizoo/thumbs/network.png differ diff --git a/public/img/logos/spizoo/thumbs/porngoespro.png b/public/img/logos/spizoo/thumbs/porngoespro.png index cbb51739..acbfd8ba 100644 Binary files a/public/img/logos/spizoo/thumbs/porngoespro.png and b/public/img/logos/spizoo/thumbs/porngoespro.png differ diff --git a/public/img/logos/spizoo/thumbs/pornstartease.png b/public/img/logos/spizoo/thumbs/pornstartease.png index 5ab80c8b..faa19316 100644 Binary files a/public/img/logos/spizoo/thumbs/pornstartease.png and b/public/img/logos/spizoo/thumbs/pornstartease.png differ diff --git a/public/img/logos/spizoo/thumbs/rawattack.png b/public/img/logos/spizoo/thumbs/rawattack.png new file mode 100644 index 00000000..619fa3cf Binary files /dev/null and b/public/img/logos/spizoo/thumbs/rawattack.png differ diff --git a/public/img/logos/spizoo/thumbs/realsensual.png b/public/img/logos/spizoo/thumbs/realsensual.png new file mode 100644 index 00000000..3c8565d5 Binary files /dev/null and b/public/img/logos/spizoo/thumbs/realsensual.png differ diff --git a/public/img/logos/spizoo/thumbs/spizoo.png b/public/img/logos/spizoo/thumbs/spizoo.png index c40a304b..fb004516 100644 Binary files a/public/img/logos/spizoo/thumbs/spizoo.png and b/public/img/logos/spizoo/thumbs/spizoo.png differ diff --git a/public/img/logos/spizoo/thumbs/thestripperexperience.png b/public/img/logos/spizoo/thumbs/thestripperexperience.png index 8ce25113..2b57a83c 100644 Binary files a/public/img/logos/spizoo/thumbs/thestripperexperience.png and b/public/img/logos/spizoo/thumbs/thestripperexperience.png differ diff --git a/public/img/logos/spizoo/thumbs/vlogxxx.png b/public/img/logos/spizoo/thumbs/vlogxxx.png new file mode 100644 index 00000000..a5da6b4f Binary files /dev/null and b/public/img/logos/spizoo/thumbs/vlogxxx.png differ diff --git a/public/img/logos/spizoo/vlogxxx.png b/public/img/logos/spizoo/vlogxxx.png new file mode 100644 index 00000000..2c20c4b7 Binary files /dev/null and b/public/img/logos/spizoo/vlogxxx.png differ diff --git a/seeds/02_sites.js b/seeds/02_sites.js index 5d36d9c8..5c1a2ad9 100644 --- a/seeds/02_sites.js +++ b/seeds/02_sites.js @@ -8537,6 +8537,51 @@ const sites = [ tags: ['solo'], parent: 'spizoo', }, + { + slug: 'mrluckypov', + name: 'Mr. Lucky POV', + url: 'https://mrluckypov.com', + tags: ['pov'], + parent: 'spizoo', + }, + { + slug: 'mrluckyvip', + name: 'Mr. Lucky VIP', + url: 'https://mrluckyvip.com', + tags: ['bts'], + parent: 'spizoo', + }, + { + slug: 'mrluckyraw', + name: 'Mr. Lucky Raw', + url: 'https://mrluckyraw.com', + parent: 'spizoo', + }, + { + slug: 'firstclasspov', + name: 'First Class POV', + url: 'https://firstclasspov.com', + tags: ['pov'], + parent: 'spizoo', + }, + { + slug: 'rawattack', + name: 'Raw Attack', + url: 'https://rawattack.com', + parent: 'spizoo', + }, + { + slug: 'realsensual', + name: 'Real Sensual', + url: 'https://realsensual.com', + parent: 'spizoo', + }, + { + slug: 'vlogxxx', + name: 'VlogXXX', + url: 'https://vlogxxx.com', + parent: 'spizoo', + }, // TEAM SKEET { slug: 'exxxtrasmall', diff --git a/src/scrapers/bang.js b/src/scrapers/bang.js index 7fd2d75c..8b9f42b9 100644 --- a/src/scrapers/bang.js +++ b/src/scrapers/bang.js @@ -91,7 +91,7 @@ async function scrapeScene(scene, entity, options) { } } - release.trailer = `https://i.bang.com/v/${scene.dvd.id}/${scene.identifier}/preview.mp4`; + release.teaser = `https://i.bang.com/v/${scene.dvd.id}/${scene.identifier}/preview.mp4`; release.channel = scene.series.name .replace(/[! .]/g, '') diff --git a/src/scrapers/spizoo.js b/src/scrapers/spizoo.js index 169ccf71..c995182d 100644 --- a/src/scrapers/spizoo.js +++ b/src/scrapers/spizoo.js @@ -14,13 +14,16 @@ function scrapeAll(scenes) { release.url = query.url('a'); release.entryId = getEntryId(release.url); - release.title = query.cnt('.title-label a'); - release.actors = query.all('.update_models a').map((el) => ({ + release.title = query.cnt('.title-label a, .thumb-title a, .p-7, .text h3'); + release.date = query.date('.date-label', 'MM/DD/YYYY'); + + release.actors = query.all(['.update_models a', '.tour_update_models a', '.pornstar-label span']).map((el) => ({ name: query.cnt(el), url: query.url(el, null), })); release.poster = query.img('a img'); + release.teaser = query.video('.leVideo source'); return release; }); @@ -30,21 +33,21 @@ function scrapeScene({ query }, url) { const release = {}; release.entryId = getEntryId(url); - release.title = query.cnt('#media-holder .title'); + release.title = query.cnt(['#media-holder .title', '.content-holder h1', '#scene h1', 'h2.titular', 'title'])?.replace(/\s+-$/, ''); - release.date = query.date('#sceneInfo .date', 'YYYY-MM-DD'); - release.duration = query.duration('#sceneInfo .data-others', /\d+:\d+/); + release.date = query.date('#sceneInfo .date, #trailer-data .date', 'YYYY-MM-DD'); + release.duration = query.duration('#sceneInfo .data-others, #trailer-data', /\d+:\d+/); - release.description = query.cnt('#sceneInfo .description'); + release.description = query.cnt('#sceneInfo .description, #trailer-data > div:first-child p'); - release.actors = query.all('#sceneInfo .data-others a[href*="/models"]').map((el) => ({ + release.actors = query.all('#sceneInfo .data-others a[href*="/models"], #trailer-data a[href*="/models"]').map((el) => ({ name: query.el(el, null, 'title'), url: query.url(el, null), })); - release.tags = query.cnts('.categories-holder a'); + release.tags = query.cnts('.categories-holder a, #sceneInfo a[href*="/categories"], #trailer-data a[href*="/categories"]'); - const poster = query.img('#video-holder .update_thumb') || query.poster('#trailervideo'); + const poster = query.img(['#video-holder .update_thumb', '#noMore .update_thumb', '#hpromo .update_thumb', '.trailer-thumb']) || query.poster('#trailervideo'); const posterPathname = poster && new URL(poster)?.pathname; release.poster = [poster, poster?.replace(/imgw=\w+/, 'imgw=680')]; @@ -56,7 +59,8 @@ function scrapeScene({ query }, url) { src, ]); - release.trailer = query.video('#trailervideo source'); + release.trailer = query.video('#trailervideo source[type="video/mp4"], #FulsSizeVideo source[type="video/mp4"]'); // sic + release.teaser = query.video('#trailer-video source[src*="/videothumbs"]'); return release; } @@ -127,7 +131,7 @@ function scrapeProfile({ query, el }) { } async function fetchLatest(channel, page) { - const res = await qu.getAll(`${channel.url}/categories/movies_${page}_d.html`, '.thumb-big'); + const res = await qu.getAll(`${channel.url}/categories/movies_${page}_d.html`, '.thumb-big, .thumb-video, .thumbnail, .thumbnail-popular, .full-thumbnail'); if (res.ok) { return scrapeAll(res.items, channel); diff --git a/src/utils/qu.js b/src/utils/qu.js index 1989c650..302674b3 100644 --- a/src/utils/qu.js +++ b/src/utils/qu.js @@ -117,13 +117,13 @@ function getElements(context, selector, first = false) { return Array.from(context.querySelectorAll(selector)); } -function q(context, selector, attrArg, applyTrim = true) { - if (!selector && context.nodeName === '#document') { +function q(context, selectors, attrArg, applyTrim = true) { + if (!selectors && context.nodeName === '#document') { return null; } const attr = attrArg === true ? 'textContent' : attrArg; - const element = getElements(context, selector, true); + const element = [].concat(selectors).reduce((acc, selector) => acc || getElements(context, selector, true), null); if (!element) { return null; @@ -138,9 +138,9 @@ function q(context, selector, attrArg, applyTrim = true) { return element; } -function all(context, selector, attrArg, applyTrim = true) { +function all(context, selectors, attrArg, applyTrim = true) { const attr = attrArg === true ? 'textContent' : attrArg; - const elements = getElements(context, selector); + const elements = [].concat(selectors).reduce((acc, selector) => acc || getElements(context, selector), null); if (attr) { return elements.map((el) => q(el, null, attr, applyTrim));