Home
Docs
GitHub
Pricing
Blog
Log In

Run Sandworm Audit for your App

Get started
Generated on May 18, 2024 via composer

php-webdriver/webdriver 1.15.1

A PHP client for Selenium WebDriver. Previously facebook/webdriver.
Package summary
Share
2
issues
2
high severity
meta
2
1
license
3
MIT
Package created
17 Jan 2020
Version published
20 Oct 2023
Maintainers
1
Total deps
3
Direct deps
2
License
MIT

Issues

2

2 high severity issues

high
via: php-webdriver/webdriver@1.15.1
via: php-webdriver/webdriver@1.15.1
Collapse
Expand

Install Script Usage

β“˜ This section contains AI-generated explanations for this package's install scripts.

The "post-install-cmd" Script

@composer install --working-dir=tools/php-cs-fixer --no-progress --no-interaction@composer install --working-dir=tools/phpstan --no-progress --no-interaction

The script runs the Composer install command in two separate directories tools/php-cs-fixer and tools/phpstan. It's supposed to install PHP Composer packages into these directories without any progress output and without any user interaction. It's considered "safe" as it only performs installation of packages into specific directories. However, the specific package contents are not provided here, so we need to have those packages content to fully ensure safety. The option --no-interaction implies installation will progress without awaiting user input which is standard for script running.

The "post-update-cmd" Script

@composer update --working-dir=tools/php-cs-fixer --no-progress --no-interaction@composer update --working-dir=tools/phpstan --no-progress --no-interaction

This script appears to run a composer update for two PHP tools: PHP-CS-Fixer (a tool for automatically fixing PHP coding standards) and PHPStan (a static analysis tool for PHP). The --working-dir option indicates which directory to run composer in, --no-progress means it won't show the progress bar, and --no-interaction means it won't ask for user input during the process. This does not seem to pose any security risks since it's only updating existing tools without introducing any new external code or trying to manipulate user data.

Licenses

MIT License

Permissive
OSI Approved
This is a human-readable summary of (and not a substitute for) the license. Disclaimer.
Can
commercial-use
modify
distribute
sublicense
private-use
Cannot
hold-liable
Must
include-copyright
include-license
3 Packages, Including:
php-webdriver/webdriver@1.15.1
symfony/polyfill-mbstring@v1.29.0
symfony/process@v7.0.7
Disclaimer

This deed highlights only some of the key features and terms of the actual license. It is not a license and has no legal value. You should carefully review all of the terms and conditions of the actual license before using the licensed material.

Sandworm is not a law firm and does not provide legal services. Distributing, displaying, or linking to this deed or the license that it summarizes does not create a lawyer-client or any other relationship.

Direct Dependencies

2
All Dependencies CSV
β“˜ This is a list of php-webdriver/webdriver 's direct dependencies. Data on all dependencies, including transitive ones, is available via CSV download.
NameVersionSizeLicenseTypeVulnerabilities
symfony/polyfill-mbstringv1.29.0-MIT
prod
symfony/processv7.0.7-MIT
prod

Visualizations

Frequently Asked Questions

What does php-webdriver/webdriver do?

The php-webdriver/webdriver is a PHP language binding for Selenium WebDriver which allows you to control web browsers from PHP. This library is compatible with Selenium server version 2.x, 3.x, and 4.x, supporting both modern W3C WebDriver protocol and the legacy JsonWireProtocol.

How do you use php-webdriver/webdriver?

To leverage the power of php-webdriver/webdriver, you first need to install it using Composer. If you don't already have Composer, you can download the binary with curl -sS https://getcomposer.org/installer | php, and then install the library using php composer.phar require php-webdriver/webdriver. This package was previously named facebook/php-webdriver. If upgrading from a version prior to 1.8.0, you need to change the name in your composer.json and run composer update.

Here is a simple usage example:

// Create a Browser Session
// After starting the server (check readme for instructions), specify its URL
$serverUrl = 'http://localhost:4444'; // Change this according to your setup

// Initiate your driver using the server's URL and browser's desired capabilities
use Facebook\WebDriver\Remote\RemoteWebDriver;
$driver = RemoteWebDriver::create($serverUrl, DesiredCapabilities::chrome());

// Control your browser
// Navigate to a webpage
$driver->get('https://www.example.com');

// Perform operations (find elements, fill forms, click buttons, etc.)
$driver->findElement(WebDriverBy::id('searchInput'))->sendKeys('PHP')->submit();

// Always remember to quit the driver at the end
$driver->quit();

Remember, these snippets aren't intended to be a fully working example by simply copy-pasting. Adjust them according to your specific needs.

Where are the php-webdriver/webdriver docs?

Comprehensive php-webdriver/webdriver documentation is available directly on their GitHub repository. You can consult the library's wiki for complete instructions on using the library with useful examples and how-tos. If you don't use an IDE, you can refer to the php-webdriver API documentation for an in-depth look at the API. Also, detailed guides on Selenium server setups and browser drivers can be found in the wiki.