This commit is contained in:
Christoph Califice
2025-10-09 20:05:31 -03:00
parent ed22ef22bc
commit 0a5f88d75a
1442 changed files with 101562 additions and 0 deletions

View File

@@ -0,0 +1,56 @@
name: Xvideos
sceneByURL:
- action: scrapeXPath
url:
- xvideos.com
- xvideos2.com
#- xvideos.es
- xvideos.red
scraper: sceneScraper
sceneByFragment:
action: scrapeXPath
scraper: sceneScraper
queryURL: https://www.xvideos.com/video{filename}/x
queryURLReplace:
filename:
# expects an id in square brackets before extension, as saved by yt-dlp by default
- regex: '.*\[([0-9a-zA-Z]{4,})\]\.[^\.]+'
with: $1
# or expects an id
- regex: '^.*?(\d+)\..+$'
with: $1
# if no id is found in the filename
- regex: .*\.[^\.]+$
with: # clear the filename so that it doesn't leak
xPathScrapers:
sceneScraper:
scene:
Title: //h2[@class="page-title"]/text()[1]
Tags:
Name: //li/a[@class="is-keyword btn btn-default"]/text()
Performers:
Name: //li[@class="model"]/a/span[1]/text()
Studio:
Name: //li[@class="main-uploader"]/a[
starts-with(@href,'/channels') or
starts-with(@href,'/amateur-channels') or
starts-with(@href,'/model-channels') or
starts-with(@href,'/pornstar-channels')
]/span[@class="name"]/text()
Image:
selector: //script[contains(text(), "setThumbUrl169")]/text()|//div[@id="html5video"][span[@class="premium-log-overlay"]]/div[@class="embed-responsive-item"]/@style
postProcess:
- replace:
- regex: ^.+(?:setThumbUrl169|url)\('(.+?\.jpg).+$
with: $1
URL: //link[@rel="alternate" and @hreflang="x-default"]/@href
Date:
selector: //script[@type="application/ld+json"]/text()
postProcess:
- replace:
- regex: '[\S\s]+"uploadDate"\s*:\s*"(\d+-\d{2}-\d{2})[^"]+"[\S\s]+'
with: $1
- parseDate: 2006-01-02
# Last Updated February 15, 2023