A high-level API for programmatically interacting with web pages through WebDriver.
This crate uses the WebDriver protocol to drive a conforming (potentially headless) browser through relatively high-level operations such as "click this element", "submit this form", etc.
Most interactions are driven by using CSS selectors. With most WebDriver-compatible browser being fairly recent, the more expressive levels of the CSS standard are also supported, giving fairly powerful operators.
Forms are managed by first calling
Client::form, and then using the methods on
manipulate the form's fields and eventually submitting it.
For low-level access to the page,
Client::source can be used to fetch the full page HTML
source code, and
Client::raw_client_for to build a raw HTTP request for a particular URL.