| Server IP : 202.61.199.114 / Your IP : 216.73.217.139 Web Server : nginx/1.22.1 System : Linux de.arni-solutions.de 6.1.0-49-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26) x86_64 User : web20 ( 1018) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /proc/3951577/root/tmp/ |
Upload File : |
import subprocess
from playwright.sync_api import sync_playwright
TOK=open('/tmp/etok.txt').read().strip(); ID=open('/tmp/eid.txt').read().strip()
url="https://seaside.pacim.de/day-list.php?t="+TOK
def revoke():
subprocess.run(["curl","-s","-b","/tmp/cj.txt","-X","POST","https://seaside.pacim.de/mobile-access.php?action=revoke","--data","id="+ID],check=True,capture_output=True)
with sync_playwright() as p:
b=p.chromium.launch(); pg=b.new_page(viewport={"width":440,"height":820})
pg.goto(url, wait_until="networkidle"); pg.wait_for_timeout(500)
# 1) search clear button
pg.fill('#dl-search','xyz'); pg.wait_for_timeout(200)
print("clear btn visible after typing:", pg.is_visible('#dl-clear'))
pg.click('#dl-clear'); pg.wait_for_timeout(200)
print("input after clear:", repr(pg.input_value('#dl-search')), "| clear btn hidden:", not pg.is_visible('#dl-clear'))
# 2) search -> open row -> zurück -> search cleared
firstplate=pg.eval_on_selector('#dl-body tr[data-out="0"]','e=>e.getAttribute("data-plate")')
pg.fill('#dl-search', firstplate); pg.wait_for_timeout(300)
pg.eval_on_selector('#dl-body tr[data-out="0"]:not([style*="none"])','e=>e.click()'); pg.wait_for_timeout(1200)
print("overlay open:", pg.is_visible('#dl-ov'))
pg.click('#dl-ov-close'); pg.wait_for_timeout(500)
print("after zurück -> overlay closed:", not pg.is_visible('#dl-ov'), "| search empty:", pg.input_value('#dl-search')=="")
# 3) end-of-session: revoke then trigger poll
revoke()
pg.evaluate("document.dispatchEvent(new Event('visibilitychange'))"); pg.wait_for_timeout(2000)
print("end-session screen visible:", pg.is_visible('#dl-ended'))
pg.screenshot(path="/tmp/ended.png")
b.close()