@@ -94,6 +94,66 @@ func ScrapeJavDB(out *[]models.ScrapedScene, queryString string) {
94
94
95
95
})
96
96
97
+ html .ForEach (`p.mb-1` ,func (id int ,p * colly.HTMLElement ) {
98
+ tr := strings .Split (p .Text ,": " )
99
+ label := tr [0 ]
100
+
101
+ if label == `Studio` {
102
+ // Studio
103
+ sc .Studio = tr [1 ]
104
+
105
+ }else if label == `DVD ID` {
106
+ // Title, SceneID and SiteID all like 'VRKM-821' format
107
+ dvdId := strings .ToUpper (tr [1 ])
108
+ sc .Title = dvdId
109
+ sc .SceneID = dvdId
110
+ sc .SiteID = dvdId
111
+
112
+ // Set 'Site' to first part of the ID (e.g. `VRKM for `vrkm-821`)
113
+ siteParts := strings .Split (dvdId ,`-` )
114
+ if len (siteParts )> 0 {
115
+ sc .Site = siteParts [0 ]
116
+ }
117
+
118
+ }else if label == `Release Date` {
119
+ // Release date
120
+ dateStr := tr [1 ]
121
+ tmpDate ,_ := goment .New (strings .TrimSpace (dateStr ),"YYYY-MM-DD" )
122
+ sc .Released = tmpDate .Format ("YYYY-MM-DD" )
123
+
124
+ }else if label == `Genre(s)` {
125
+ // Tags
126
+ /* NOTE:
127
+ "Tags are technically incomplete vs. what you'd get translating dmm.co.jp
128
+ tags/correlating them back to their old equivalents on r18 using something
129
+ like Javinizer's tag CSV"
130
+ */
131
+ p .ForEach ("a" ,func (id int ,anchor * colly.HTMLElement ) {
132
+ href := anchor .Attr ("href" )
133
+ if strings .Contains (href ,"javdatabase.com/genres/" ) {
134
+ // Tags
135
+ tag := ProcessJavrTag (anchor .Text )
136
+
137
+ if tag != "" {
138
+ sc .Tags = append (sc .Tags ,tag )
139
+ }
140
+ }
141
+ })
142
+
143
+ }else if label == `Translated Title` {
144
+ // Synopsis / description
145
+ sc .Synopsis = tr [1 ]
146
+
147
+ }else if label == `Content ID` {
148
+ contentId = tr [1 ]
149
+
150
+ }else if label == "Runtime" {
151
+ // Duration
152
+ sc .Duration ,_ = strconv .Atoi (strings .Split (tr [1 ]," " )[0 ])
153
+ }
154
+
155
+ })
156
+
97
157
// Screenshots
98
158
html .ForEach ("a[href]" ,func (_ int ,anchor * colly.HTMLElement ) {
99
159
linkHref := anchor .Attr (`href` )