php-webdriver – Selenium WebDriver bindings for PHP
Php-webdriver library is PHP language binding for Selenium WebDriver, which allows you to control web browsers from PHP.
This WebDriver client aims to be as close as possible to bindings in other languages. The concepts are very similar to the Java, .NET, Python and Ruby bindings for WebDriver.
This is new version of PHP client, rewritten from scratch starting 2013. Using the old version? Check out Adam Goucher's fork of it at https://github.com/Element-34/php-webdriver
Looking for API documentation of php-webdriver? See http://facebook.github.io/php-webdriver/
Any complaint, question, idea? You can post it on the user group https://www.facebook.com/groups/phpwebdriver/.
Installation is possible using Composer.
If you don't already use Composer, you can download the
curl -sS https://getcomposer.org/installer | php
Then install the library:
php composer.phar require facebook/webdriver
All you need as the server for this client is the
selenium-server-standalone-#.jar file provided here: http://selenium-release.storage.googleapis.com/index.html
Download and run that file, replacing # with the current server version.
java -jar selenium-server-standalone-#.jar
Then when you create a session, be sure to pass the url to where your server is running.
// This would be the url of the host running the server-standalone.jar $host = 'http://localhost:4444/wd/hub'; // this is the default
$driver = RemoteWebDriver::create($host, DesiredCapabilities::firefox());
$driver = RemoteWebDriver::create($host, DesiredCapabilities::chrome());
You can also customize the desired capabilities:
$desired_capabilities = DesiredCapabilities::firefox(); $desired_capabilities->setCapability('acceptSslCerts', false); $driver = RemoteWebDriver::create($host, $desired_capabilities);
See https://github.com/SeleniumHQ/selenium/wiki/DesiredCapabilities for more details.
Above snippets are not intended to be a working example by simply copy pasting. See example.php for working example.
For latest changes see CHANGELOG.md file.
We have a great community willing to try and help you!
- Via our Facebook Group - If you have questions or are an active contributor consider joining our facebook group and contributing to the communal discussion and support.
- Via StackOverflow - You can also ask a question or find many already answered question on StackOverflow.
- Via GitHub - Another option if you have a question (or bug report) is to submit it here as an new issue.
We love to have your help to make php-webdriver better. See CONTRIBUTING.md for more information about contributing and developing php-webdriver.