{"repo":"sergueik/selenium_cdp","free":true,"listed":false,"github":"https://github.com/sergueik/selenium_cdp","clone":"git clone https://github.com/sergueik/selenium_cdp.git","description":"Selenium 4x, executing Chrome DevTools Protocol commands","language":"Java","stars":52,"topics":["selenium","cdp","chrome","chromium","edge","java"],"license":"MIT","category":"scrapers-browser-automation","readme_excerpt":"Info The project practices Java Selenium 4.0.x release ChromiumDriver to execute the Chrome DevTools Protocol a.k.a. cdp commands - an entirely different set of API communicated to the Chrome browser family via POST requests to /session/$sessionId/goog/cdp/execute with API-specific payload) feature (many of the cdp methods e.g. the DOM ones like performSearch , getSearchResults getNodeForLocation getOuterHTML querySelectorAll querySelector getAttributes overlap with classic Selenium in Classic Javascript and there are few specific ones like: addCustomHeaders getFrameTree setGeolocationOverride setDownloadBehavior to name a few, and various event listeners This functionality is named in official Selenium Developer Documentation as BiDirectional functionality and BiDi API The project also exercised other new Selenium 4 API e.g. relative nearby locators whidh did not apear powerful enough yet. For accessing the Chrome Devtools API with Selenium driver 3.x see cdp webdriver project Examples Async Code Execution by XHR Fetch events in the Browser This test is opening Wikipedia page and hovers over few links using \"classic\" Selenium Actions class: To emphacise that the lambda operates \"classic\" object,the WebElement type was entered explicitly. In the @Before -annotated method in the test class, the Fetch API is enabled for all requests (If necessary one can limit to subset of reuests via match pattern). Then in the test method callback is set up: This allows capture every Ajax req","default_branch":null,"files":null,"tree":[],"storefront":"/r/sergueik","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/sergueik/selenium_cdp/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}