@@ -10,7 +10,6 @@ import (
10
10
"time"
11
11
12
12
"github.com/avast/retry-go/v4"
13
- "github.com/gocolly/colly/v2"
14
13
"github.com/markphelps/optional"
15
14
16
15
"github.com/xbapps/xbvr/pkg/common"
@@ -962,31 +961,17 @@ func (scrapeRules ActorScraperConfig) buildGenericActorScraperRules() {
962
961
963
962
siteDetails = GenericScraperRuleSet {}
964
963
siteDetails .Domain = "vrspy.com"
965
- siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"biography" ,Selector :`.star-biography-description` })
966
- siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"image_url" ,Selector :`.star-photo img` ,ResultType :"attr" ,Attribute :"src" ,PostProcessing : []PostProcessing {{Function :"RemoveQueryParams" }}})
967
- siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"images" ,Native :func (e interface {}) []string {
968
- html := e .(* colly.HTMLElement )
969
- var values []string
970
- if mainPhotoURL := html .ChildAttr (`.star-photo img` ,`src` );mainPhotoURL != "" {
971
- partialURLRegex := regexp .MustCompile (`^(.*)/[^/]+.jpg` )
972
- if partialURLMatch := partialURLRegex .FindStringSubmatch (mainPhotoURL );len (partialURLMatch )== 2 {
973
- fullURLRegex := regexp .MustCompile (regexp .QuoteMeta (partialURLMatch [1 ])+ `/[^"]+.jpg` )
974
- nuxtData := html .ChildText (`#__NUXT_DATA__` )
975
- if imageURLs := fullURLRegex .FindAllString (nuxtData ,- 1 );imageURLs != nil {
976
- values = imageURLs
977
- }
978
- }
979
- }
980
- return values
981
- }})
982
- siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"height" ,Selector :`.about-me-mobile .stars-params-title:contains("Height:") + .stars-params-value` })
983
- siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"weight" ,Selector :`.about-me-mobile .stars-params-title:contains("Weight:") + .stars-params-value` })
984
- siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"band_size" ,Selector :`.about-me-mobile .stars-params-title:contains("Measurements:") + .stars-params-value` ,PostProcessing : []PostProcessing {{Function :"RegexString" ,Params : []string {`(\d+)([A-Za-z]*)-(\d+)-(\d+)` ,"1" }}}})
985
- siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"cup_size" ,Selector :`.about-me-mobile .stars-params-title:contains("Measurements:") + .stars-params-value` ,PostProcessing : []PostProcessing {{Function :"RegexString" ,Params : []string {`(\d+)([A-Za-z]*)-(\d+)-(\d+)` ,"2" }}}})
986
- siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"waist_size" ,Selector :`.about-me-mobile .stars-params-title:contains("Measurements:") + .stars-params-value` ,PostProcessing : []PostProcessing {{Function :"RegexString" ,Params : []string {`(\d+)([A-Za-z]*)-(\d+)-(\d+)` ,"3" }}}})
987
- siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"hip_size" ,Selector :`.about-me-mobile .stars-params-title:contains("Measurements:") + .stars-params-value` ,PostProcessing : []PostProcessing {{Function :"RegexString" ,Params : []string {`(\d+)([A-Za-z]*)-(\d+)-(\d+)` ,"4" }}}})
988
- siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"nationality" ,Selector :`.about-me-mobile .stars-params-title:contains("Nationality:") + .stars-params-value` ,PostProcessing : []PostProcessing {{Function :"Lookup Country" }}})
989
- siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"hair_color" ,Selector :`.about-me-mobile .stars-params-title:contains("Hair Color:") + .stars-params-value` })
964
+ siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"biography" ,Selector :`.star-bio .show-more-text-container` })
965
+ siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"image_url" ,Selector :`.avatar img` ,ResultType :"attr" ,Attribute :"src" ,PostProcessing : []PostProcessing {{Function :"RemoveQueryParams" }}})
966
+ siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"images" ,Selector :`.avatar img` ,ResultType :"attr" ,Attribute :"src" ,PostProcessing : []PostProcessing {{Function :"RemoveQueryParams" }}})
967
+ siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"height" ,Selector :`.star-info-row-title:contains("Height:") + span` })
968
+ siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"weight" ,Selector :`.star-info-row-title:contains("Weight:") + span` })
969
+ siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"band_size" ,Selector :`.star-info-row-title:contains("Measurements:") + span` ,PostProcessing : []PostProcessing {{Function :"RegexString" ,Params : []string {`(\d+)([A-Za-z]*)-(\d+)-(\d+)` ,"1" }}}})
970
+ siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"cup_size" ,Selector :`.star-info-row-title:contains("Measurements:") + span` ,PostProcessing : []PostProcessing {{Function :"RegexString" ,Params : []string {`(\d+)([A-Za-z]*)-(\d+)-(\d+)` ,"2" }}}})
971
+ siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"waist_size" ,Selector :`.star-info-row-title:contains("Measurements:") + span` ,PostProcessing : []PostProcessing {{Function :"RegexString" ,Params : []string {`(\d+)([A-Za-z]*)-(\d+)-(\d+)` ,"3" }}}})
972
+ siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"hip_size" ,Selector :`.star-info-row-title:contains("Measurements:") + span` ,PostProcessing : []PostProcessing {{Function :"RegexString" ,Params : []string {`(\d+)([A-Za-z]*)-(\d+)-(\d+)` ,"4" }}}})
973
+ siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"nationality" ,Selector :`.star-info-row-title:contains("Nationality:") + span` ,PostProcessing : []PostProcessing {{Function :"Lookup Country" }}})
974
+ siteDetails .SiteRules = append (siteDetails .SiteRules ,GenericActorScraperRule {XbvrField :"hair_color" ,Selector :`.star-info-row-title:contains("Hair Color:") + span` })
990
975
scrapeRules .GenericActorScrapingConfig ["vrspy scrape" ]= siteDetails
991
976
992
977
siteDetails = GenericScraperRuleSet {}