name: PlayboyPlus
sceneByURL:
  - action: scrapeXPath
    url: &urls
      - playboyplus.com
      - pbp-ma.playboy.com
      - pbp-ma-legacy.playboy.com
    scraper: sceneScraper
    queryURL: "{url}"
    queryURLReplace:
      url:
        - regex: (?:https://)?(pbp-ma(-legacy)?.playboy.com)/gallery/([^/]*)(?:/vip)?
          with: https://playboyplus.com/gallery/$3
galleryByURL:
  - action: scrapeXPath
    url: *urls
    scraper: galleryScraper
    queryURL: "{url}"
    queryURLReplace:
      url:
        - regex: (?:https://)?(pbp-ma(-legacy)?.playboy.com)/gallery/([^/]*)(?:/vip)?
          with: https://playboyplus.com/gallery/$3
xPathScrapers:
  sceneScraper:
    scene:
      Title: &title
        selector: //h1[@class="title"]
      Date: &date
        selector: //p[@class="date label"]
        postProcess:
          - parseDate: January 2, 2006
      Performers: &performers
        Name: //p[@class="contributorName"]//a[contains(@href, "profile")]
      Details: &details
        selector: //p[@class="description-truncated"] | //p[@class="description-truncated"]/following-sibling::*
        postProcess:
          - replace:
              - regex: \s*\.{3}
                with: ""
      Image:
        selector: //div[@class="imageContainer"]//img/@data-src
      Studio: &studio
        Name:
          fixed: PlayboyPlus
  galleryScraper:
    gallery:
      Title: *title
      Date: *date
      Performers: *performers
      Photographer: //p[@class="contributorName"]//a[contains(@href, "photographer")]
      Details: *details
      Studio: *studio
# Last Updated March 27, 2023
