import io from playwright.sync_api import sync_playwright out = io.open('_ap_out.txt', 'w', encoding='utf-8') with sync_playwright() as p: b = p.chromium.launch() pg = b.new_page() calls = [] pg.on('response', lambda r: calls.append((r.request.method, r.url, r.status, r.headers.get('content-type', ''), r.request.post_data))) pg.goto('https://jobs.apple.com/en-us/search?location=switzerland-CHE', wait_until='domcontentloaded', timeout=60000) pg.wait_for_timeout(10000) for m, u, st, ct, pd in calls: if 'jobs.apple.com' in u and ('api' in u or 'search' in u or 'graphql' in u): out.write('%s %s [%s] %s\n' % (m, u[:170], st, ct[:40])) if pd: out.write(' POST %s\n' % pd[:400]) out.write('---- page text ----\n') out.write(pg.inner_text('body')[:1200]) b.close() out.close()