Completed Evil Angel scraper. Added trans tags.

This commit is contained in:
2019-09-28 03:26:04 +02:00
parent 298eabe56e
commit 2c32ed6549
13 changed files with 179 additions and 266 deletions

View File

@@ -15,11 +15,11 @@ function init() {
watch: {
pageTitle(title) {
if (title) {
document.title = `Porn Radar - ${title}`;
document.title = `traxxx - ${title}`;
return;
}
document.title = 'Porn Radar';
document.title = 'traxxx';
},
},
methods: {

View File

@@ -1,11 +0,0 @@
'use strict';
const React = require('react');
const Header = () => (
<header className="header">
<h1>Porn Radar</h1>
</header>
);
module.exports = Header;

View File

@@ -1,119 +0,0 @@
'use strict';
const React = require('react');
const moment = require('moment');
const PropTypes = require('prop-types');
const Layout = require('./layout.jsx');
const Home = ({ releases }) => (
<Layout>
<ul className="scenes">
{releases.map(release => (
<li key={release.id} className="scene">
<span
className="scene-banner"
>
<span className="scene-details">
<a
href={`/site/${release.site.id}`}
target="_blank"
rel="noopener noreferrer"
className="scene-site site-link"
title={release.network.name}
>
{release.site.name}
</a>
<a
href={release.url}
target="_blank"
rel="noopener noreferrer"
className="scene-date"
>
{moment(release.date).format('MMM D, YYYY')}
</a>
</span>
<a
href={`/scene/${release.id}`}
target="_blank"
rel="noopener noreferrer"
className="scene-row scene-link"
>
<img
src={`/${release.site.id}/${release.id}/0.jpg`}
alt={release.id}
className="scene-thumbnail"
/>
</a>
</span>
<div className="scene-info">
<a
href={`/scene/${release.id}`}
target="_blank"
rel="noopener noreferrer"
className="scene-row scene-link"
>
<h2 className="scene-title">{release.title}</h2>
</a>
<span className="scene-row">
<ul className="scene-actors nolist">
{release.actors.map(actor => (
<li
key={actor.id}
className="scene-actor"
>
<a
href={`/actor/${actor.id}`}
target="_blank"
rel="noopener noreferrer"
className="actor-link"
>
{actor.name}
</a>
</li>
))}
</ul>
</span>
<span
title={release.tags.map(tag => tag.tag).join(', ')}
className="scene-row"
>
<ul className="scene-tags nolist">
{release.tags.map(tag => (
<li
key={tag.tag}
className="scene-tag"
>
<a
href={`/tag/${tag.tag}`}
target="_blank"
rel="noopener noreferrer"
className="tag-link"
>
{tag.tag}
</a>
</li>
))}
</ul>
</span>
</div>
</li>
))}
</ul>
</Layout>
);
Home.propTypes = {
releases: PropTypes.arrayOf(PropTypes.object),
};
Home.defaultProps = {
releases: [],
};
module.exports = Home;

View File

@@ -1,38 +0,0 @@
'use strict';
const React = require('react');
const PropTypes = require('prop-types');
const Header = require('./header.jsx');
const Layout = ({ children, title }) => (
<html lang="en">
<head>
{title
? <title>Porn Radar | {title}</title>
: <title>Porn Radar</title>
}
<link href="/css/style.css" rel="stylesheet" />
</head>
<body>
<Header />
<div className="content">
{children}
</div>
</body>
</html>
);
Layout.propTypes = {
children: PropTypes.node.isRequired,
title: PropTypes.string,
};
Layout.defaultProps = {
title: null,
};
module.exports = Layout;

View File

@@ -1,93 +0,0 @@
'use strict';
const React = require('react');
const PropTypes = require('prop-types');
const moment = require('moment');
const Layout = require('./layout.jsx');
const Release = ({ release, thumbnails }) => (
<Layout title={release.title}>
<div>
<h2>{release.title}</h2>
<p>{moment(release.date).format('MMMM DD, YYYY')}</p>
<p>{release.shootId}</p>
<h3>
<a
href={`/site/${release.site.id}`}
target="_blank"
rel="noopener noreferrer"
title={release.network.name}
>
{release.site.name}
</a>
</h3>
<p>{release.network.name}</p>
<p>
<a
href={release.url}
target="_blank"
rel="noopener noreferrer"
>
View on {new URL(release.site.url).host.replace('www.', '')}
</a>
</p>
<ul>
{release.actors.map(actor => (
<li key={actor.id}>
<a
href={`/actor/${actor.id}`}
target="_blank"
rel="noopener noreferrer"
className="actor-link"
>
{actor.name}
</a>
</li>
))}
</ul>
<p>{release.description}</p>
<ul>
{release.tags.map(tag => (
<li key={tag.tag}>
<a
href={`/tag/${tag.tag}`}
target="_blank"
rel="noopener noreferrer"
className="actor-link"
>
{tag.tag}
</a>
</li>
))}
</ul>
{thumbnails.map((thumbnail, index) => (
<img
key={thumbnail}
src={`/${release.site.id}/${release.id}/${thumbnail}`}
alt={`Thumbnail ${index}`}
className="thumbnail"
/>
))}
</div>
</Layout>
);
Release.propTypes = {
release: PropTypes.object,
thumbnails: PropTypes.arrayOf(PropTypes.string),
};
Release.defaultProps = {
release: null,
thumbnails: [],
};
module.exports = Release;