name: "Tug Pass" sceneByURL: - action: scrapeXPath url: - tugpass.com/videos scraper: network - action: scrapeXPath url: - cumblastcity.com/videos - clubtug.com/videos - familylust.com/videos - finishhim.com/videos - meanmassage.com/videos - nookies.com/video - over40handjobs.com/videos - petite18.com/videos - seemomsuck.com/videos - teentugs.com/videos scraper: primary - action: scrapeXPath url: - breedme.com/videos - edgequeens.com/videos - jawbreakerz.com/videos - milfaf.com/videos - mylked.com/videos - shadyspa.com/videos - shereacts.com/videos scraper: secondary - action: scrapeXPath url: - teasepov.com/videos scraper: teasepov xPathScrapers: network: scene: Details: &details //meta[@name="description"]/@content Performers: &performers Name: //div[@class="featuringWrapper"]/a | //div[@class="video-box"]//a[contains(@href, "/model/")] Title: &title selector: //title/text() postProcess: - replace: - regex: \s[|-].+$ with: # Scrape sanitized URL URL: &url //link[@rel="canonical"]/@href Image: selector: //div[@class="player"]/img/@src postProcess: - replace: - regex: ^ with: https://www.tugpass.com/ Studio: Name: selector: //div[@class="player"]/img/@src postProcess: - replace: - regex: ^\/[A-Za-z_-]+\/([A-Za-z0-9-]+)\/.+ with: $1 primary: scene: Details: *details Performers: *performers Title: *title URL: *url Image: selector: > //link[@rel="canonical"]/@href | //div[@class="responsive-image"]/img/@src | //video/@poster | //img[@id="playerImagePreview"]/@src | //span[@class="video_here"]/img/@src | //script/text()[contains(.,"posterImage")] concat: "__SEP__" postProcess: - replace: - regex: ^(https:.+(\.com)).*'([^']+(jpe?g|gif))'.* with: $1$3 - regex: ^https?:.+(https://.+) with: $1 - regex: ^(https?:.+(\.com)).+__SEP__(.+) with: $1$3 Studio: &studio Name: selector: //meta[@name="copyright"]/@content postProcess: - replace: - regex: Copyright\s(.+)\s\d{4} with: $1 - map: breedme: Breed Me milfaf: MILFAF secondary: scene: Title: >- //h3[@class="top-title"] | //div[@class="title-top"]//h5 Details: //div[contains(@class, "video-detail") or contains(@class, "title-bottom")]/p Date: selector: //div[@class="title-top"]//span/text() postProcess: - replace: - regex: ^\W+ with: "" - parseDate: January 2, 2006 Image: //video/@poster Performers: Name: //div[contains(@class, "player") or contains(@class, "title-top")]//a[contains(@href, "models")] URL: *url Studio: *studio # This one site is different enough that it gets its own scraper teasepov: scene: Title: //div[@class="slideTitle"] Details: //div[@class="videoDescription"] Image: //div[@id="player"]/img/@src Date: selector: //div[@class="slideDate"] postProcess: - replace: - regex: ^\W+ with: "" - parseDate: January 2, 2006 URL: *url Studio: *studio # Last Updated April 08, 2024