Skip to content

Instantly share code, notes, and snippets.

@poontology
Last active April 19, 2025 02:26
Show Gist options
  • Save poontology/f6024ef24d3d90623f283cd8d2dabfa5 to your computer and use it in GitHub Desktop.
Save poontology/f6024ef24d3d90623f283cd8d2dabfa5 to your computer and use it in GitHub Desktop.
SLR JAV info
name path vidcount actual_vidcount javcodes
100%VR /studios/100vr 1 1 HPVR001
3DV&R /studios/3dvr 165 165 VRVR-133
4KVR /studios/4kvr 108 103 DOVR-116
AQUA /studios/aqua 254 200 AQULA055
AromaPlanning /studios/aromaplanning 76 76 VARM-036
Asari VR /studios/asari-vr 27 27 FRVR014
BakunouVR /studios/bakunouvr 21 18 BNVR-007 NGVR-007
CasanovA /studios/casanova 793 710 CASMIANI056 CAFR553 CAPI040
ChinChinVR /studios/chinchinvr 132 129 CCVR082
CosmoPlanetsVR /studios/cosmoplanetsvr 14 14 COSVR-013
DANDY /studios/dandy 14 13 DANDYHQVR-015A
DreamTicketVR /studios/dreamticketvr 78 78 DTVR047
DynamicEyes /studios/dynamiceyes 20 17 decop002 DECHA015
EroTimeVR /studios/erotimevr 88 87 ETVTM-017 ETVCO-049
Fantasista VR /studios/fantasista-vr 12 12 FTVR-016
Fleshy BODY VR /studios/fleshy-body-vr 88 88 NKKVR-080
FS.KnightsVisual /studios/fsknightsvisual 36 36 FSVR-037
GASVR /studios/gasvr 14 14 GASVR-020
JVRPorn /studios/jvrporn 149 149
KMPVR /studios/kmpvr 1148 1116 VRKM-1098
KoalaVR /studios/koalavr 698 669 KIWVR-576 KOLVR-047
MAX-A /studios/max-a 233 161 MAXVR-141
MAXING /studios/maxing 27 27 MXVR-024
MiluVR /studios/miluvr 74 60 MIVR_00088
MONDELDE VR /studios/mondelde-vr 19 14 DOVR-126
MousouVR /studios/mousouvr 4 4 MOVR-00005
Mr.Michiru /studios/mrmichiru 47 45 MTVR-048
MUGON /studios/mugon-vr 5 5 MGVR010
NATURAL HIGH /studios/natural-high 131 119 NHVR-221
OFFICE K’S /studios/office-ks-vr 9 3 KSVR-003
P-BOX VR /studios/p-box-vr 32 32 PXVR-037
ParellalWordle /studios/parellalwordle 24 24 PAIDOL012
PetersMAX /studios/petersmax 91 86 VVVR-055 FMAXVR-020 PMAXVR-017
PetersPrimoVR /studios/petersprimovr 55 42 PYDVR-028 PYMVR-018
PRESTIGE /studios/prestige 48 47 PRVR-051
RADICAL /studios/radical 18 15 MANIVR-032
ROCKET /studios/rocket 5 4 AVOPVR-138
SALOME Prologue /studios/salome-prologue 12 12 SPVR-019
SCOOP VR /studios/scoop-vr 1 1 SCVR-024
Scream!VR /studios/screamvr 1 1 WABB-002
Silk Labo /studios/silk-labo 6 6 VRSL-018
SodCreate /studios/sodcreate 1016 974 3DSVR-1488
Spicy VR /studios/spicy-vr 7 7 SPIVR-060
TeppanVR /studios/teppanvr 189 186 TPVR-238
TMAVR /studios/tmavr 314 314 TMAVR-209 DIBVR-002 DTCVR-005
TOUCH Me /studios/touch-me 8 8 TMWB003 TMPH001 TMKS003
V1VR /studios/v1vr 700 692 GOPJ-454 MOHV-025 VOVS-253
VR Japanese Pornstars stay home routines /studios/vr-japanese-pornstars-stay-home-routines 14 14 360VR-P0015
VR Japanese idols Party /studios/vr-japanese-idols-party 38 38 360VR-G0001-8
VRbuz /studios/vrbuz 49 49 BUZ-047
VRlab9division /studios/vrlab9division 91 71 WVR6-D094
WAAPVR /studios/waapvr 330 329 WPVR240 AVOPVR019
WOW! /studios/wow 77 77 WOW-097
Yellow Pinkman /studios/yellow-pinkman 15 15 YP-Y011
#!/usr/bin/env python3
# get JAV studios' info from SLR
# 2025, poontology
from random import random
from time import sleep
from lxml import html
import csv, io, re
import requests
AUTH_JWT = ''
if AUTH_JWT == '':
print("SLR login is required to see JAV IDs")
exit()
def slrget(path):
headers = {
'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36',
'cookie': 'auth_jwt=' + AUTH_JWT
}
#print('get', path)
return html.fromstring(requests.get('https://www.sexlikereal.com' + path, headers=headers).text)
def get_javid(vpg):
txt = '\n'.join(vpg.xpath('//*[@id="tabs-about"]//text()')).strip()
try:
return re.findall(r"JAV ID: ([^ ]+)", txt).pop()
except IndexError:
pass
def get_actual_vidcount(spg):
txt = '\n'.join(spg.find_class('c-meta--studio')[0].xpath('.//text()')).strip()
try:
return re.findall(r"(\d+) videos", txt).pop()
except IndexError:
pass
if __name__ == '__main__':
fn = 'slrjav.csv'
csvr = csv.DictReader(open(fn))
stud = {row['path']: row for row in csvr}
for u,s in stud.items():
spg = slrget(u + '?sort=most_recent')
s['actual_vidcount'] = get_actual_vidcount(spg)
if u == '/studios/3dvr': print(s)
if len(s['javcodes']) > 0: continue
vpg = slrget(spg.xpath('//*[@data-qa="scenes-grid-item-media"]/a')[0].attrib['href'])
s['javcodes'] = get_javid(vpg)
if s['javcodes'] is None: print('no javid:', s)
print('.', end='', flush=True)
sleep(1.5 + random())
fh = open(fn, 'w')
fn = ['name', 'path', 'vidcount', 'actual_vidcount', 'javcodes']
csvw = csv.DictWriter(fh, fieldnames=fn)
csvw.writeheader()
for k,v in sorted(stud.items()):
v['path'] = k
csvw.writerow(v)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment