name: Femjoy
galleryByURL:
  - action: scrapeXPath
    url:
      - femjoy.com/post/
    scraper: galleryScraper
sceneByQueryFragment:
  action: scrapeXPath
  queryURL: "{url}"
  scraper: sceneScraper
sceneByName:
  action: scrapeXPath
  queryURL: "https://www.femjoy.com/videos?s={}"
  scraper: sceneSearch
sceneByURL:
  - action: scrapeXPath
    url:
      - femjoy.com/post/
    scraper: sceneScraper
xPathScrapers:
  sceneScraper:
    common:
      $performer: //h1[@class='post_title']/a[starts-with(@href,"/models")]
    scene:
      Title: &titleSel //h1[@class='post_title']/span[last()]/text()
      Studio: &studioAttr
        Name:
          fixed: Femjoy
      Date: &dateAttr
        selector: //h2[@class='post_title']/text()[2]
        postProcess: &datePP
          - replace:
              - regex: '.*released on\s+'
                with:
          - parseDate: Jan 2, 2006
      Director: //*[@class='post_title']/a[starts-with(@href,"/director")]
      Performers: &performersAttr
        Name: $performer
        URL:
          selector: $performer/@href
          postProcess: &prependDomain
            - replace:
                - regex: ^
                  with: https://femjoy.com
      Details: &details
        selector: //*[@class='post_description']//text()
        concat: "\n"
      Image: //meta[@name='twitter:image']/@content
  sceneSearch:
    common:
      $scene: //div[@class='post_video']
      $preview: //div[@class='post_video']//a[@class='preview']
    scene:
      Title: $preview/@title
      Date:
        selector: $scene//span[@class='posted_on']/text()
        postProcess: *datePP
      URL:
        selector: $preview/@href
        postProcess: *prependDomain
      Image:
        selector: $preview/@data-media-poster
  galleryScraper:
    common:
      $performer: //h1[@class='post_title']/a[starts-with(@href,"/models")]
    gallery:
      Title: *titleSel
      Studio: *studioAttr
      Date: *dateAttr
      Performers: *performersAttr
      Details: *details

# Last Updated August 03, 2023
