name: "SexVR" performerByName: action: scrapeXPath queryURL: https://www.sexvr.com/search/pornstars/{}/ scraper: performerSearch performerByURL: - action: scrapeXPath url: - sexvr.com/pornstars scraper: performerScraper sceneByURL: - action: scrapeXPath url: - sexvr.com/video scraper: sceneScraper xPathScrapers: performerSearch: performer: Name: //div[@class="item-col item--pornstar col"]//a/@title URL: //div[@class="item-col item--pornstar col"]//a/@href performerScraper: common: $info: //div[@class="profile-info"] performer: Name: $info//li[@class="profile-field profile-field-name"]/span[@class="sub-desc"]/text() URL: //link[@rel="canonical"]/@href Gender: selector: //meta[@name="application-name"]/@content postProcess: - replace: - regex: .+ with: female Twitter: $info//li[span[@class="sub-label"]/text()="Twitter:"]/span[@class="sub-desc"]/a/@href Birthdate: selector: $info//li[@class="profile-field profile-field-fob"]/span[@class="sub-desc"]/text() postProcess: - replace: - regex: \s\(\d+\s\w+\) with: - parseDate: 2 Jan 2006 Ethnicity: selector: $info//li[span[@class="sub-label"]/text()="Ethnicity:"]/span[@class="sub-desc"]/text() postProcess: - replace: - regex: Latin with: 'hispanic' - regex: Caucasian with: 'white' - regex: Ebony with: 'black' - regex: Asian with: 'asian' Country: $info//li[span[@class="sub-label"]/text()="Country:"]/span[@class="sub-desc"]/text() EyeColor: $info//li[@class="profile-field profile-field-eyes"]/span[@class="sub-desc"]/text() Height: selector: $info//li[@class="profile-field profile-field-height"]/span[@class="sub-desc"]/text() postProcess: - replace: - regex: (\d+)\scm.+ with: $1 Measurements: $info//li[span[@class="sub-label"]/text()="Measurements:"]/span[@class="sub-desc"]/text() FakeTits: selector: $info//li[span[@class="sub-label"]/text()="Natural Tits:"]/span[@class="sub-desc"]/text() postProcess: - map: Yes: No No: Yes Tattoos: $info//li[span[@class="sub-label"]/text()="Tattoo(s):"]/span[@class="sub-desc"]/text() Piercings: $info//li[span[@class="sub-label"]/text()="Piercing(s):"]/span[@class="sub-desc"]/text() Aliases: $info//li[@class="profile-field profile-field-ska"]/span[@class="sub-desc"]/text() Image: //div[@class="profile-img-avatar"]/img/@src sceneScraper: scene: Title: //div[@class="video-title"]/h1/text() Details: selector: //div[@class="main-description"]/text()|//div[@id="toggle-desc"]/text() concat: " " Tags: Name: //div[@class="tags-block"]//a/text() Performers: Name: //div[@class="tags-block"]//a/@title Studio: Name: //span[@class="studio-name"]//text() Image: //dl8-video/@poster # Last Updated November 10, 2020