name: "21Roles"
sceneByURL:
  - action: scrapeXPath
    url:
      - 21roles.com/game/DisplayPlayer/gameId/
      - lifeselector.com/game/DisplayPlayer/gameId/
    scraper: sceneScraper
xPathScrapers:
  sceneScraper:
    scene:
      Title:
        selector: //title/text()
        postProcess:
          - replace:
              - regex: .+(?:DisplayPlayer\s-\s)(.+)(?:\s-\sDisplayPlayer)+
                with: $1
      Details: //div[@class="info"]/p/text()
      Tags:
        Name:
          selector: //title/text()
          postProcess:
            - replace:
                - regex: .+(?:DisplayPlayer\s-\s)(.+)(?:\s-\sDisplayPlayer)+
                  with: https://21roles.com/site/search/keyword/$1
                - regex: (.+)(?:\s-\sInteractive).+
                  with: https://lifeselector.com/site/search/keyword/$1
            - subScraper:
                selector: //div[@class="details"]/div[contains(.,'Labels')]//a/text()
                concat: ","
          split: ","
      Performers:
        Name:
          selector: //div[@class="modelBlock"]/div[@class="description"]/h1/a/text()
          postProcess:
            - replace:
                - regex: .+(?:\/)(\d+)+
                  with: https://21roles.com/game/DisplayPlayer/gameId/$1/view/cast
            - subScraper:
                selector: //div[@class="content"]//h1/a/text()
                concat: ","
          split: ","
      Image:
        selector: //div[@class="signup-right-col"]//input[@id="requestUri"]/@value
        postProcess:
          - replace:
              - regex: .+(?:\/)(\d+)+
                with: https://i.c7cdn.com/generator/games/$1/images/poster/1_size1600.jpg
      Studio:
        Name:
          selector: //meta[@property='og:site_name']/@content
          postProcess:
            - map:
                21roles.com: '21Roles'
                LifeSelector: 'LifeSelector'

# Driver is used only to grab tags, if you are unable to use CDP and don't mind
# losing the tags, comment out or remove the driver lines
driver:
  useCDP: true

# Last Updated November 08, 2020
