{"id":13648824,"url":"https://github.com/saresend/selenium-rs","last_synced_at":"2025-04-04T20:12:50.664Z","repository":{"id":57666594,"uuid":"144410643","full_name":"saresend/selenium-rs","owner":"saresend","description":"A Rust Client for the Selenium webdriver (WIP)","archived":false,"fork":false,"pushed_at":"2023-07-09T16:39:04.000Z","size":68,"stargazers_count":175,"open_issues_count":13,"forks_count":31,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-10-30T06:00:36.883Z","etag":null,"topics":["rust","selenium","testing"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/saresend.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2018-08-11T18:51:11.000Z","updated_at":"2024-08-07T07:46:51.000Z","dependencies_parsed_at":"2024-01-14T10:59:39.494Z","dependency_job_id":"65cd8837-6b22-44ee-9157-d4359366b16c","html_url":"https://github.com/saresend/selenium-rs","commit_stats":{"total_commits":70,"total_committers":9,"mean_commits":7.777777777777778,"dds":0.2142857142857143,"last_synced_commit":"8c71ad997cad45b5175f9234081724a3ff6ff583"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saresend%2Fselenium-rs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saresend%2Fselenium-rs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saresend%2Fselenium-rs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saresend%2Fselenium-rs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/saresend","download_url":"https://codeload.github.com/saresend/selenium-rs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247242681,"owners_count":20907134,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["rust","selenium","testing"],"created_at":"2024-08-02T01:04:34.554Z","updated_at":"2025-04-04T20:12:50.645Z","avatar_url":"https://github.com/saresend.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"# Selenium-rs\n[![GitHub issues](https://img.shields.io/github/issues/saresend/selenium-rs.svg)](https://github.com/saresend/selenium-rs/issues)\n\n## About \n\nSelenium-rs is a simple client for the [selenium webdriver](https://www.seleniumhq.org/). Its built to work with the webdriver protocol (spec found [here](https://www.w3.org/TR/webdriver1/)). It currently supports the chrome Driver, and Gecko (firefox) support is on the way. \n\n## Installation \n\n```toml\n[dependencies]\nselenium-rs = \"0.1.0\"\n\n```\n\nNote that selenium-rs also requires a running instance of the selenium webdriver, which can be found [here](https://www.seleniumhq.org/download/). Simply download the jar and run it to instantiate the selenium webdriver server. \n## Setup \n\n### Start selenium server in one window\n\n```java -jar selenium-server-standalone-3.141.59.jar```\n\nDownload Chrome Driver - unpack and put on PATH\n\nhttp://chromedriver.chromium.org/downloads\n\n## Documentation: [docs.rs](https://docs.rs/selenium-rs/0.1.0/selenium_rs/)\n\n## Sample Usage \n\n### Example - Navigating to a web page \n```rust \nuse selenium_rs::webdriver::{Browser,WebDriver};\n\nlet mut driver= WebDriver::new(Browser::Chrome);\ndriver.start_session();\n\ndriver.navigate(\"https://www.rust-lang.org\"); \nassert_eq!(driver.get_current_url().unwrap(), String::from(\"https://www.rust-lang.org/\"));\n```\n\n### Performing a google search \n```rust \nuse selenium_rs::webdriver::{Browser, WebDriver, Selector};\nlet mut driver = WebDriver::new(Browser::Chrome);\n\ndriver.start_session();\ndriver.navigate(\"http://google.com\");\nlet search_bar = driver.find_element(Selector::CSS, \"input[maxlength=\\\"2048\\\"]\").unwrap();\n\nsearch_bar.type_text(\"selenium-rs github\");\nlet search_button = driver.find_element(Selector::CSS, \"input[name=\\\"btnK\\\"]\").unwrap();\nsearch_button.click();\nsearch_button.click();\n```\n\n### Example - Inspecting attributes of an element \n```rust \nuse selenium_rs::webdriver::{Selector, Browser, WebDriver};\nuse selenium_rs::element::Element;\n\nlet mut driver = WebDriver::new(Browser::Chrome);\ndriver.start_session();\ndriver.navigate(\"http://www.google.com\");\nlet search_form =  driver.find_element(Selector::CSS, \"#searchform\").unwrap();\nassert!(search_form.get_css_value(\"min-width\").unwrap() == \"980px\");\n```\n\n## Current Status \n\nCurrently, the project supports many of the more important functionalities provided by the webdriver spec. However, it is still\na fair bit away from complete. Support will get periodically added as I find the time to finish implementing everything described in the webdriver spec. In-progress features will be tracked [here](https://github.com/saresend/selenium-rs/issues). \n\n**Note:** Currently only tested with Selenium 3.14\n\n\n## Contribution \n\nPull requests are always welcome! Please see the [issue tracker](https://github.com/saresend/selenium-rs/issues) for currently in-progress features, improvements, and bugfixes.\n\n\n## Licence \nThis is provided under the [MIT](https://github.com/saresend/selenium-rs/blob/master/LICENSE) license. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaresend%2Fselenium-rs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsaresend%2Fselenium-rs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaresend%2Fselenium-rs/lists"}