Compare commits
No commits in common. "c849d097e14830af3e81174d94107aa10c178452" and "129b03eb5a940360a992f710093310d69c820672" have entirely different histories.
c849d097e1
...
129b03eb5a
|
@ -1,12 +1,12 @@
|
||||||
{
|
{
|
||||||
"name": "traxxx",
|
"name": "traxxx",
|
||||||
"version": "1.237.19",
|
"version": "1.237.18",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "traxxx",
|
"name": "traxxx",
|
||||||
"version": "1.237.19",
|
"version": "1.237.18",
|
||||||
"license": "ISC",
|
"license": "ISC",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@aws-sdk/client-s3": "^3.458.0",
|
"@aws-sdk/client-s3": "^3.458.0",
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "traxxx",
|
"name": "traxxx",
|
||||||
"version": "1.237.19",
|
"version": "1.237.18",
|
||||||
"description": "All the latest porn releases in one place",
|
"description": "All the latest porn releases in one place",
|
||||||
"main": "src/app.js",
|
"main": "src/app.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|
|
@ -3,22 +3,17 @@
|
||||||
const unprint = require('unprint');
|
const unprint = require('unprint');
|
||||||
|
|
||||||
const { stripQuery } = require('../utils/url');
|
const { stripQuery } = require('../utils/url');
|
||||||
const slugify = require('../utils/slugify');
|
|
||||||
|
|
||||||
function scrapeLatest(scenes, channel) {
|
function scrapeLatest(scenes, channel) {
|
||||||
return scenes.map(({ query, _element }) => {
|
return scenes.map(({ query, element }) => {
|
||||||
const release = {};
|
const release = {};
|
||||||
|
|
||||||
release.url = query.url('[href*="/video"]');
|
release.url = query.url('[href*="/video"]');
|
||||||
// release.entryId = unprint.query.attribute(element, null, 'data-vid'); // does not match old videos
|
release.entryId = unprint.query.attribute(element, null, 'data-vid');
|
||||||
|
|
||||||
release.title = query.content('.video-thumbnail-footer a[href*="/video"]');
|
release.title = query.content('.video-thumbnail-footer a[href*="/video"]');
|
||||||
release.date = query.date('.actor-list + span', 'MM/DD/YYYY');
|
release.date = query.date('.actor-list + span', 'MM/DD/YYYY');
|
||||||
|
|
||||||
release.entryId = release.url
|
|
||||||
? new URL(release.url).pathname.split('/').at(-1)
|
|
||||||
: slugify(release.title);
|
|
||||||
|
|
||||||
release.actors = query.all('.actor-list a').map((actorEl) => ({
|
release.actors = query.all('.actor-list a').map((actorEl) => ({
|
||||||
name: unprint.query.content(actorEl),
|
name: unprint.query.content(actorEl),
|
||||||
url: unprint.query.url(actorEl, null, { origin: channel.url }),
|
url: unprint.query.url(actorEl, null, { origin: channel.url }),
|
||||||
|
@ -44,11 +39,10 @@ function scrapeLatest(scenes, channel) {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function scrapeScene({ query }, { url, entity }) {
|
function scrapeScene({ query }, channel) {
|
||||||
const release = {};
|
const release = {};
|
||||||
|
|
||||||
// release.entryId = query.attribute('div[data-id]', 'data-id');
|
release.entryId = query.attribute('div[data-id]', 'data-id');
|
||||||
release.entryId = new URL(url).pathname.split('/').at(-1);
|
|
||||||
|
|
||||||
release.title = query.content('.scene-info h1');
|
release.title = query.content('.scene-info h1');
|
||||||
release.description = query.content('//div[contains(@class, \'scene-info\')]//i[contains(@class, \'fa-quote\')]/following-sibling::span');
|
release.description = query.content('//div[contains(@class, \'scene-info\')]//i[contains(@class, \'fa-quote\')]/following-sibling::span');
|
||||||
|
@ -57,7 +51,7 @@ function scrapeScene({ query }, { url, entity }) {
|
||||||
|
|
||||||
release.actors = query.all('.scene-info a[href*="/models"]').map((actorEl) => ({
|
release.actors = query.all('.scene-info a[href*="/models"]').map((actorEl) => ({
|
||||||
name: unprint.query.content(actorEl),
|
name: unprint.query.content(actorEl),
|
||||||
url: unprint.query.url(actorEl, null, { origin: entity.url }),
|
url: unprint.query.url(actorEl, null, { origin: channel.url }),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
release.poster = query.poster('#player-wrapper video');
|
release.poster = query.poster('#player-wrapper video');
|
||||||
|
|
|
@ -1,34 +0,0 @@
|
||||||
'use strict';
|
|
||||||
|
|
||||||
// const config = require('config');
|
|
||||||
const initKnex = require('knex');
|
|
||||||
// const args = require('yargs').argv;
|
|
||||||
|
|
||||||
async function init() {
|
|
||||||
const knex = initKnex({
|
|
||||||
client: 'pg',
|
|
||||||
connection: {
|
|
||||||
host: '135.125.235.53',
|
|
||||||
user: 'traxxx',
|
|
||||||
password: 'YGDdBeXZXE25gKuzh5g7u4RV61G00XP6',
|
|
||||||
database: 'traxxx',
|
|
||||||
},
|
|
||||||
asyncStackTraces: true,
|
|
||||||
});
|
|
||||||
|
|
||||||
const results = await knex('releases')
|
|
||||||
.select('releases.*')
|
|
||||||
.leftJoin('entities', 'entities.id', 'releases.entity_id')
|
|
||||||
.leftJoin('entities as networks', 'networks.id', 'entities.parent_id')
|
|
||||||
.whereIn('networks.slug', ['whalemember', 'pornpros']);
|
|
||||||
|
|
||||||
console.log(results.length);
|
|
||||||
|
|
||||||
await knex('releases')
|
|
||||||
.whereIn('id', results.map((result) => result.id))
|
|
||||||
.update('entry_id', knex.raw('split_part(releases.url, \'/\', -1)'));
|
|
||||||
|
|
||||||
knex.destroy();
|
|
||||||
}
|
|
||||||
|
|
||||||
init();
|
|
Loading…
Reference in New Issue