This commit is contained in:
doms9 2025-09-17 19:35:28 -04:00
parent bfaf613dfa
commit 00000d9769
11 changed files with 662 additions and 590 deletions

View file

@ -200,28 +200,35 @@ def capture_req(
got_one.set()
async def firefox(
playwright: Playwright, ignore_https_errors: bool = False
async def new_browser(
playwright: Playwright,
browser: str = "firefox",
ignore_https_errors: bool = False,
) -> tuple[Browser, BrowserContext]:
browser = await playwright.firefox.launch(headless=True)
context = await browser.new_context(
user_agent=UA,
viewport={"width": 1366, "height": 768},
device_scale_factor=1,
locale="en-US",
timezone_id="America/New_York",
color_scheme="dark",
permissions=["geolocation"],
extra_http_headers={
"Accept-Language": "en-US,en;q=0.9",
"Upgrade-Insecure-Requests": "1",
},
ignore_https_errors=ignore_https_errors,
)
if browser == "brave":
brwsr = await playwright.chromium.connect_over_cdp("http://localhost:9222")
context = brwsr.contexts[0]
else:
brwsr = await playwright.firefox.launch(headless=True)
await context.add_init_script(
"""
context = await brwsr.new_context(
user_agent=UA,
ignore_https_errors=ignore_https_errors,
viewport={"width": 1366, "height": 768},
device_scale_factor=1,
locale="en-US",
timezone_id="America/New_York",
color_scheme="dark",
permissions=["geolocation"],
extra_http_headers={
"Accept-Language": "en-US,en;q=0.9",
"Upgrade-Insecure-Requests": "1",
},
)
await context.add_init_script(
"""
Object.defineProperty(navigator, 'webdriver', {get: () => undefined});
Object.defineProperty(navigator, 'languages', {
@ -263,6 +270,6 @@ async def firefox(
observer.observe(document.documentElement, { childList: true, subtree: true });
"""
)
)
return browser, context
return brwsr, context