aaac24b05c
gates / gates (push) Successful in 4m12s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012qRErfCoiTkvDK9N5XHbzb
17 lines
1.3 KiB
Python
17 lines
1.3 KiB
Python
import sys, os, re
|
|
sys.path.insert(0, '/mnt/5_hdd/felhom.eu/git/app-catalog-felhom.eu/scripts'); import box_walk as b
|
|
lang = sys.argv[1]
|
|
b.login()
|
|
sess = open(f"{b.SC}/sess{os.getpid()}.txt").read().strip()
|
|
r = b.sh(["curl", "-sk", "-H", b.HOSTHDR, "-H", f"Cookie: {sess}", f"{b.BASE}/launcher"])
|
|
tok = re.search(r'name="_csrf" value="([^"]+)"', r.stdout).group(1)
|
|
r = b.sh(["curl", "-sk", "-o", "/dev/null", "-w", "%{http_code}", "-H", b.HOSTHDR, "-H", f"Cookie: {sess}",
|
|
"-H", f"Origin: https://felhom.{b.DOMAIN}", "-H", f"Referer: https://felhom.{b.DOMAIN}/launcher",
|
|
"--data-urlencode", f"_csrf={tok}", "--data-urlencode", f"lang={lang}", "--data-urlencode", "back=/launcher",
|
|
f"{b.BASE}/settings/language"])
|
|
print("POST /settings/language", lang, "->", r.stdout)
|
|
r = b.sh(["curl", "-sk", "-H", b.HOSTHDR, "-H", f"Cookie: {sess}", f"{b.BASE}/launcher"])
|
|
print("launcher <html lang>:", re.search(r'<html lang="([^"]+)"', r.stdout).group(1) if re.search(r'<html lang="([^"]+)"', r.stdout) else "?",
|
|
"| sidebar first item:", re.search(r'#i-rocket"/></svg>([^<]+)<', r.stdout).group(1) if re.search(r'#i-rocket"/></svg>([^<]+)<', r.stdout) else "?")
|
|
fd = os.open(f"{b.SC}/session.txt", os.O_WRONLY | os.O_CREAT | os.O_TRUNC, 0o600); os.write(fd, sess.encode()); os.close(fd)
|