Closed
Description
Simplify the pure CDP Mode API
Currently, pure CDP Mode may look something like the code shown below.
(Pure CDP Mode is CDP Mode without UC Mode, meaning no Selenium at all.)
import asyncio
from seleniumbase.core import sb_cdp
from seleniumbase.undetected import cdp_driver
url = "https://seleniumbase.io/demo_page"
loop = asyncio.new_event_loop()
driver = cdp_driver.cdp_util.start_sync(guest=True)
page = loop.run_until_complete(driver.get(url))
sb = sb_cdp.CDPMethods(loop, page, driver)
sb.type("textarea", "Some text")
sb.click("button")
With the changes coming in #3567 (already on my local machine), that only simplifies the imports a bit:
import asyncio
from seleniumbase import sb_cdp
from seleniumbase import cdp_driver
url = "https://seleniumbase.io/demo_page"
loop = asyncio.new_event_loop()
driver = cdp_driver.start_sync(guest=True)
page = loop.run_until_complete(driver.get(url))
sb = sb_cdp.CDPMethods(loop, page, driver)
sb.type("textarea", "Some text")
sb.click("button")
I want to simplify it much more, to maybe something like this:
from seleniumbase import sb_cdp
url = "https://seleniumbase.io/demo_page"
sb = sb_cdp.Chrome(url, guest=True)
sb.type("textarea", "Some text")
sb.click("button")