6 releases

0.3.3 Jan 8, 2023
0.3.2 Nov 8, 2022
0.2.0 Nov 8, 2022
0.1.0 Nov 7, 2022

#29 in #tabs

MIT license

13KB
181 lines

cdp-rs

Allows interacting with a browser using Chrome Dev Protocol. To use this you must launch an instance of Chrome with remote-debugging-port

chrome.exe --remote-debugging-port=9222

Examples

use cdp_rs::CdpClient;

// Connect to the first tab of your open Chrome instance
let mut cdp = CdpClient::new().connect_to_tab(0)

// Send a message so we can recieve DOM events
cdp.send("DOM.enable", parms!());
while Ok(m) = cdp.wait_message() {
    // Print out all messages recieved
    print!("Recieved: {}", m)
}
use cdp_rs::CdpClient;

// Connect to first tab to a chrome instance running on a non-default remote-debugging-port
let mut cdp = CdpClient::custom("localhost", 9000).connect_to_tab(0);
// Send message with parameters and recieve the response
let cookies = cdp.send("Network.getCookies", parms!("urls", vec!["https://www.google.com"]))?;
// Check cookies

lib.rs:

cdp-rs

cdp-rs is a Chrome Dev Protocol client, which allows interacting with a browser through the CDP protocol.

Dependencies

~5–21MB
~245K SLoC