name: NakedSword
sceneByURL:
  - action: scrapeXPath
    scraper: sceneScraper
    url:
      - nakedsword.com/movies/
movieByURL:
  - action: scrapeXPath
    scraper: movieScraper
    url:
      - nakedsword.com/movies/
xPathScrapers:
  sceneScraper:
    scene:
      Title:
        selector: //div[@class="VideoTitle"]/h4 | (//*[@aria-current="page"]/following-sibling::div//div[@class="SceneNumbering"]/text())[1]
        concat: " - "
      URL:
        selector: //*[@aria-current="page"]/@href
        postProcess: &prependHost
          - replace:
              - regex: ^/
                with: https://www.nakedsword.com/
      Director: &director
        selector: //div[contains(text(),"director")]/following-sibling::*//a
        concat: ", "
      Studio: &studio
        Name:
          selector: //div[contains(text(),"studio")]/following-sibling::*//a
          postProcess:
            - replace:
                - regex: "[|]"
                  with: x
      Performers:
        Name: //div[contains(text(),"stars")]/following-sibling::*//a
      Tags:
        Name: //div[contains(text(),"themes")]/following-sibling::*//a
      Details: &summary //span[contains(text(),"Summary")]/following-sibling::div/span/span[(contains(@style,"hidden"))]
      Image:
        selector: //div[@data-vjs-player="true"]/video/@poster
      Movies:
        Name: &movieTitle //div[@class="VideoTitle"]/h4
        URL:
          selector: //a[contains(@class, "GoToMovieIcon")]/@href
          postProcess: *prependHost
        Synopsis:
          selector: //a[contains(@class, "GoToMovieIcon")]/@href
          postProcess:
            - replace:
                - regex: ^/
                  with: https://www.nakedsword.com/
            - subScraper: *summary

        FrontImage: &frontImage //div[contains(@class, "MSD-Poster")]/img/@src
        BackImage: &backImage
          selector: //div[contains(@class, "MSD-Poster")]/img/@src
          postProcess:
            - replace:
                - regex: xlf
                  with: xlb

  movieScraper:
    movie:
      Name: *movieTitle
      Duration:
        selector: //span[@class="Duration"]
        postProcess:
          - replace:
              - regex: \(|\)
                with: ""
      Director: *director
      Synopsis: *summary
      Studio: *studio
      FrontImage: *frontImage
      BackImage: *backImage

driver:
  useCDP: true
  sleep: 3
  headers:
    - Key: User-Agent
      Value: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:79.0) Gecko/20100101 Firefox/79.0)
# Last Updated March 23, 2024
