diff --git a/public/img/logos/topwebmodels/2girls1camera.png b/public/img/logos/topwebmodels/2girls1camera.png new file mode 100644 index 00000000..25378a99 Binary files /dev/null and b/public/img/logos/topwebmodels/2girls1camera.png differ diff --git a/public/img/logos/topwebmodels/biggulpgirls.png b/public/img/logos/topwebmodels/biggulpgirls.png new file mode 100644 index 00000000..9a0aac96 Binary files /dev/null and b/public/img/logos/topwebmodels/biggulpgirls.png differ diff --git a/public/img/logos/topwebmodels/cougarseason.png b/public/img/logos/topwebmodels/cougarseason.png new file mode 100644 index 00000000..30f95cb5 Binary files /dev/null and b/public/img/logos/topwebmodels/cougarseason.png differ diff --git a/public/img/logos/topwebmodels/deepthroatsirens.png b/public/img/logos/topwebmodels/deepthroatsirens.png new file mode 100644 index 00000000..8c17d61d Binary files /dev/null and b/public/img/logos/topwebmodels/deepthroatsirens.png differ diff --git a/public/img/logos/topwebmodels/facialsforever.png b/public/img/logos/topwebmodels/facialsforever.png new file mode 100644 index 00000000..4fc4192d Binary files /dev/null and b/public/img/logos/topwebmodels/facialsforever.png differ diff --git a/public/img/logos/topwebmodels/favicon.png b/public/img/logos/topwebmodels/favicon.png new file mode 100644 index 00000000..d7c76c95 Binary files /dev/null and b/public/img/logos/topwebmodels/favicon.png differ diff --git a/public/img/logos/topwebmodels/lazy/2girls1camera.png b/public/img/logos/topwebmodels/lazy/2girls1camera.png new file mode 100644 index 00000000..34f41550 Binary files /dev/null and b/public/img/logos/topwebmodels/lazy/2girls1camera.png differ diff --git a/public/img/logos/topwebmodels/lazy/biggulpgirls.png b/public/img/logos/topwebmodels/lazy/biggulpgirls.png new file mode 100644 index 00000000..f3b21481 Binary files /dev/null and b/public/img/logos/topwebmodels/lazy/biggulpgirls.png differ diff --git a/public/img/logos/topwebmodels/lazy/cougarseason.png b/public/img/logos/topwebmodels/lazy/cougarseason.png new file mode 100644 index 00000000..aaa938a4 Binary files /dev/null and b/public/img/logos/topwebmodels/lazy/cougarseason.png differ diff --git a/public/img/logos/topwebmodels/lazy/deepthroatsirens.png b/public/img/logos/topwebmodels/lazy/deepthroatsirens.png new file mode 100644 index 00000000..68a496bc Binary files /dev/null and b/public/img/logos/topwebmodels/lazy/deepthroatsirens.png differ diff --git a/public/img/logos/topwebmodels/lazy/facialsforever.png b/public/img/logos/topwebmodels/lazy/facialsforever.png new file mode 100644 index 00000000..428c6791 Binary files /dev/null and b/public/img/logos/topwebmodels/lazy/facialsforever.png differ diff --git a/public/img/logos/topwebmodels/lazy/favicon.png b/public/img/logos/topwebmodels/lazy/favicon.png new file mode 100644 index 00000000..e8b0b242 Binary files /dev/null and b/public/img/logos/topwebmodels/lazy/favicon.png differ diff --git a/public/img/logos/topwebmodels/lazy/network.png b/public/img/logos/topwebmodels/lazy/network.png new file mode 100644 index 00000000..0b781e11 Binary files /dev/null and b/public/img/logos/topwebmodels/lazy/network.png differ diff --git a/public/img/logos/topwebmodels/lazy/poundedpetite.png b/public/img/logos/topwebmodels/lazy/poundedpetite.png new file mode 100644 index 00000000..db234ec2 Binary files /dev/null and b/public/img/logos/topwebmodels/lazy/poundedpetite.png differ diff --git a/public/img/logos/topwebmodels/lazy/shesbrandnew.png b/public/img/logos/topwebmodels/lazy/shesbrandnew.png new file mode 100644 index 00000000..22775747 Binary files /dev/null and b/public/img/logos/topwebmodels/lazy/shesbrandnew.png differ diff --git a/public/img/logos/topwebmodels/lazy/topwebmodels.png b/public/img/logos/topwebmodels/lazy/topwebmodels.png new file mode 100644 index 00000000..e0d5222b Binary files /dev/null and b/public/img/logos/topwebmodels/lazy/topwebmodels.png differ diff --git a/public/img/logos/topwebmodels/lazy/twmclassics.png b/public/img/logos/topwebmodels/lazy/twmclassics.png new file mode 100644 index 00000000..5b212bec Binary files /dev/null and b/public/img/logos/topwebmodels/lazy/twmclassics.png differ diff --git a/public/img/logos/topwebmodels/lazy/twmpornvault.png b/public/img/logos/topwebmodels/lazy/twmpornvault.png new file mode 100644 index 00000000..d607a725 Binary files /dev/null and b/public/img/logos/topwebmodels/lazy/twmpornvault.png differ diff --git a/public/img/logos/topwebmodels/misc/2-girls-1-camera.png b/public/img/logos/topwebmodels/misc/2-girls-1-camera.png new file mode 100644 index 00000000..7c355461 Binary files /dev/null and b/public/img/logos/topwebmodels/misc/2-girls-1-camera.png differ diff --git a/public/img/logos/topwebmodels/misc/2-girls-1-camera_light.png b/public/img/logos/topwebmodels/misc/2-girls-1-camera_light.png new file mode 100644 index 00000000..812f0f81 Binary files /dev/null and b/public/img/logos/topwebmodels/misc/2-girls-1-camera_light.png differ diff --git a/public/img/logos/topwebmodels/misc/big-gulp-girls.png b/public/img/logos/topwebmodels/misc/big-gulp-girls.png new file mode 100644 index 00000000..f39b9197 Binary files /dev/null and b/public/img/logos/topwebmodels/misc/big-gulp-girls.png differ diff --git a/public/img/logos/topwebmodels/misc/classics.png b/public/img/logos/topwebmodels/misc/classics.png new file mode 100644 index 00000000..6eca2ed7 Binary files /dev/null and b/public/img/logos/topwebmodels/misc/classics.png differ diff --git a/public/img/logos/topwebmodels/misc/cougar-season.png b/public/img/logos/topwebmodels/misc/cougar-season.png new file mode 100644 index 00000000..79ae642b Binary files /dev/null and b/public/img/logos/topwebmodels/misc/cougar-season.png differ diff --git a/public/img/logos/topwebmodels/misc/deepthroat-sirens.png b/public/img/logos/topwebmodels/misc/deepthroat-sirens.png new file mode 100644 index 00000000..c67a9a36 Binary files /dev/null and b/public/img/logos/topwebmodels/misc/deepthroat-sirens.png differ diff --git a/public/img/logos/topwebmodels/misc/facials-forever.png b/public/img/logos/topwebmodels/misc/facials-forever.png new file mode 100644 index 00000000..8fae3bc5 Binary files /dev/null and b/public/img/logos/topwebmodels/misc/facials-forever.png differ diff --git a/public/img/logos/topwebmodels/misc/logo.png b/public/img/logos/topwebmodels/misc/logo.png new file mode 100644 index 00000000..96813af9 Binary files /dev/null and b/public/img/logos/topwebmodels/misc/logo.png differ diff --git a/public/img/logos/topwebmodels/misc/porn-vault.png b/public/img/logos/topwebmodels/misc/porn-vault.png new file mode 100644 index 00000000..3e45b52a Binary files /dev/null and b/public/img/logos/topwebmodels/misc/porn-vault.png differ diff --git a/public/img/logos/topwebmodels/misc/pounded-petite.png b/public/img/logos/topwebmodels/misc/pounded-petite.png new file mode 100644 index 00000000..2d603e47 Binary files /dev/null and b/public/img/logos/topwebmodels/misc/pounded-petite.png differ diff --git a/public/img/logos/topwebmodels/misc/shes-brand-new.png b/public/img/logos/topwebmodels/misc/shes-brand-new.png new file mode 100644 index 00000000..f841bea4 Binary files /dev/null and b/public/img/logos/topwebmodels/misc/shes-brand-new.png differ diff --git a/public/img/logos/topwebmodels/misc/top-web-models-classics_dark.png b/public/img/logos/topwebmodels/misc/top-web-models-classics_dark.png new file mode 100644 index 00000000..2aa51592 Binary files /dev/null and b/public/img/logos/topwebmodels/misc/top-web-models-classics_dark.png differ diff --git a/public/img/logos/topwebmodels/misc/top-web-models-classics_light.png b/public/img/logos/topwebmodels/misc/top-web-models-classics_light.png new file mode 100644 index 00000000..57017c43 Binary files /dev/null and b/public/img/logos/topwebmodels/misc/top-web-models-classics_light.png differ diff --git a/public/img/logos/topwebmodels/misc/top-web-models_dark.png b/public/img/logos/topwebmodels/misc/top-web-models_dark.png new file mode 100644 index 00000000..b7e7c903 Binary files /dev/null and b/public/img/logos/topwebmodels/misc/top-web-models_dark.png differ diff --git a/public/img/logos/topwebmodels/misc/top-web-models_light.png b/public/img/logos/topwebmodels/misc/top-web-models_light.png new file mode 100644 index 00000000..9882978e Binary files /dev/null and b/public/img/logos/topwebmodels/misc/top-web-models_light.png differ diff --git a/public/img/logos/topwebmodels/network.png b/public/img/logos/topwebmodels/network.png new file mode 100644 index 00000000..0d4203cd Binary files /dev/null and b/public/img/logos/topwebmodels/network.png differ diff --git a/public/img/logos/topwebmodels/poundedpetite.png b/public/img/logos/topwebmodels/poundedpetite.png new file mode 100644 index 00000000..817ff787 Binary files /dev/null and b/public/img/logos/topwebmodels/poundedpetite.png differ diff --git a/public/img/logos/topwebmodels/shesbrandnew.png b/public/img/logos/topwebmodels/shesbrandnew.png new file mode 100644 index 00000000..929dc488 Binary files /dev/null and b/public/img/logos/topwebmodels/shesbrandnew.png differ diff --git a/public/img/logos/topwebmodels/thumbs/2girls1camera.png b/public/img/logos/topwebmodels/thumbs/2girls1camera.png new file mode 100644 index 00000000..3cead921 Binary files /dev/null and b/public/img/logos/topwebmodels/thumbs/2girls1camera.png differ diff --git a/public/img/logos/topwebmodels/thumbs/biggulpgirls.png b/public/img/logos/topwebmodels/thumbs/biggulpgirls.png new file mode 100644 index 00000000..23565eb0 Binary files /dev/null and b/public/img/logos/topwebmodels/thumbs/biggulpgirls.png differ diff --git a/public/img/logos/topwebmodels/thumbs/cougarseason.png b/public/img/logos/topwebmodels/thumbs/cougarseason.png new file mode 100644 index 00000000..c2d006f2 Binary files /dev/null and b/public/img/logos/topwebmodels/thumbs/cougarseason.png differ diff --git a/public/img/logos/topwebmodels/thumbs/deepthroatsirens.png b/public/img/logos/topwebmodels/thumbs/deepthroatsirens.png new file mode 100644 index 00000000..9e4671d3 Binary files /dev/null and b/public/img/logos/topwebmodels/thumbs/deepthroatsirens.png differ diff --git a/public/img/logos/topwebmodels/thumbs/facialsforever.png b/public/img/logos/topwebmodels/thumbs/facialsforever.png new file mode 100644 index 00000000..8e7dd2ca Binary files /dev/null and b/public/img/logos/topwebmodels/thumbs/facialsforever.png differ diff --git a/public/img/logos/topwebmodels/thumbs/favicon.png b/public/img/logos/topwebmodels/thumbs/favicon.png new file mode 100644 index 00000000..e8b0b242 Binary files /dev/null and b/public/img/logos/topwebmodels/thumbs/favicon.png differ diff --git a/public/img/logos/topwebmodels/thumbs/network.png b/public/img/logos/topwebmodels/thumbs/network.png new file mode 100644 index 00000000..2a0c3b8d Binary files /dev/null and b/public/img/logos/topwebmodels/thumbs/network.png differ diff --git a/public/img/logos/topwebmodels/thumbs/poundedpetite.png b/public/img/logos/topwebmodels/thumbs/poundedpetite.png new file mode 100644 index 00000000..3a1d30a7 Binary files /dev/null and b/public/img/logos/topwebmodels/thumbs/poundedpetite.png differ diff --git a/public/img/logos/topwebmodels/thumbs/shesbrandnew.png b/public/img/logos/topwebmodels/thumbs/shesbrandnew.png new file mode 100644 index 00000000..53e918a8 Binary files /dev/null and b/public/img/logos/topwebmodels/thumbs/shesbrandnew.png differ diff --git a/public/img/logos/topwebmodels/thumbs/topwebmodels.png b/public/img/logos/topwebmodels/thumbs/topwebmodels.png new file mode 100644 index 00000000..4ce1457c Binary files /dev/null and b/public/img/logos/topwebmodels/thumbs/topwebmodels.png differ diff --git a/public/img/logos/topwebmodels/thumbs/twmclassics.png b/public/img/logos/topwebmodels/thumbs/twmclassics.png new file mode 100644 index 00000000..77f3be7a Binary files /dev/null and b/public/img/logos/topwebmodels/thumbs/twmclassics.png differ diff --git a/public/img/logos/topwebmodels/thumbs/twmpornvault.png b/public/img/logos/topwebmodels/thumbs/twmpornvault.png new file mode 100644 index 00000000..1960d81d Binary files /dev/null and b/public/img/logos/topwebmodels/thumbs/twmpornvault.png differ diff --git a/public/img/logos/topwebmodels/topwebmodels.png b/public/img/logos/topwebmodels/topwebmodels.png new file mode 100644 index 00000000..9923fc00 Binary files /dev/null and b/public/img/logos/topwebmodels/topwebmodels.png differ diff --git a/public/img/logos/topwebmodels/twmclassics.png b/public/img/logos/topwebmodels/twmclassics.png new file mode 100644 index 00000000..57017c43 Binary files /dev/null and b/public/img/logos/topwebmodels/twmclassics.png differ diff --git a/public/img/logos/topwebmodels/twmpornvault.png b/public/img/logos/topwebmodels/twmpornvault.png new file mode 100644 index 00000000..2f142169 Binary files /dev/null and b/public/img/logos/topwebmodels/twmpornvault.png differ diff --git a/src/scrapers/topwebmodels.js b/src/scrapers/topwebmodels.js new file mode 100644 index 00000000..5f2919a6 --- /dev/null +++ b/src/scrapers/topwebmodels.js @@ -0,0 +1,60 @@ +'use strict'; + +const qu = require('../utils/qu'); +const http = require('../utils/http'); +const slugify = require('../utils/slugify'); + +function scrapeAll(scenes) { + return scenes.map((scene) => { + const release = {}; + + release.entryId = scene.id; + release.url = `https://tour.topwebmodels.com/scenes/${scene.id}/${slugify(scene.title)}`; + + release.title = scene.title; + release.description = scene.description; + + release.duration = qu.durationToSeconds(scene.videos_duration); + release.date = new Date(scene.release_date); + + release.actors = scene.models.map(actor => ({ + name: actor.name, + gender: actor.gender || null, + avatar: actor.thumb, + url: `https://tour.topwebmodels.com/models/${actor.id}/${slugify(actor.name)}`, + })); + + release.stars = scene.rating; + release.tags = scene.tags.map(tag => tag.name); + + release.poster = scene.thumb; + + release.channel = slugify(scene.sites[0]?.name, ''); + + console.log(scene); + console.log(release); + return release; + }); +} + +async function fetchLatest(channel, page) { + const session = http.session(); + + await http.get(channel.url); + + const res = await http.get(`https://tour.topwebmodels.com/api/sites/${channel.parameters?.slug || channel.slug}?page=${page}`, { + session, + }); + + console.log(res); + + if (res.ok) { + return scrapeAll(res.body.videos.items); + } + + return res.status; +} + +module.exports = { + fetchLatest, +};