name: "We Are Hairy" sceneByURL: - action: scrapeXPath url: - wearehairy.com scraper: sceneScraper galleryByURL: - action: scrapeXPath url: - wearehairy.com/models scraper: galleryScraper performerByURL: - action: scrapeXPath url: - wearehairy.com/models scraper: performerScraper xPathScrapers: sceneScraper: scene: Title: &title //title Date: &date selector: //time/@datetime postProcess: - parseDate: 2006-01-02 Details: &details //meta[@name="description"]/@content Tags: &tags Name: //div[@class="tagline"]//a Image: selector: //meta[@itemprop="thumbnailUrl"]/@content postProcess: - replace: - regex: \/\/(.*) with: https://$1 Performers: &performers Name: //div[@class="meet"]//a Director: &director //h3[contains(text(),"Shot by")]/following-sibling::p Studio: &studio Name: fixed: We Are Hairy galleryScraper: gallery: Title: *title Date: *date Studio: *studio Performers: *performers Tags: *tags Details: *details Photographer: *director performerScraper: performer: Name: //span/span[@itemprop="name"]/text() Gender: fixed: Female # Uncomment to scrape performer image # Image: # selector: //div[@class="lhs"]/img/@src Height: selector: //p[@id="height_both"]/text() postProcess: - replace: - regex: .*(\d{3}) cm with: $1 Weight: selector: //p[@id="weight_both"]/text() postProcess: - replace: - regex: .*(\d{2,}) kg with: $1 # Last Updated January 27, 2024