bewil19/php-undected-webdriver

An composer php undected webdriver.

v0.0.1 2022-05-31 19:44 UTC

This package is auto-updated.

Last update: 2024-04-09 07:13:29 UTC


README

Latest Stable Version Total Downloads PHP Version Require

Before you start

Before you start using this Library, you need to know how PHP works, you need to know the language.

FAQ

TODO

Getting Started

Requirements

  • PHP 8
    • We recommend PHP 8.0 as it will be the most stable and most performant.
    • x86 (32-bit) PHP requires ext-gmp extension enabled for handling Permissions.
  • Composer

Windows and SSL

Unfortunately PHP on Windows does not have access to the Windows Certificate Store. This is an issue because TLS gets used and as such certificate verification gets applied (turning this off is not an option).

You will notice this issue by your script exiting immediately after one loop turn without any errors. Unfortunately there is for some reason no error or exception.

As such users of this library need to download a Certificate Authority extract from the cURL website.
The path to the caextract must be set in the php.ini for openssl.cafile.

Recommended Extensions

  • The latest PHP version.
  • ext-gmp if using 32-bit PHP.

Installing

Install using Composer.

  1. Run composer require bewil19/php-undected-webdriver. This will install the latest release.
    • If you would like, you can also install the development branch by running composer require bewil19/php-undected-webdriver dev-master.
  2. Include the Composer autoload file at the top of your main file:
    • include __DIR__.'/vendor/autoload.php';

Basic Example

<?php

use UndectedWebdriver\Chrome;

require_once __DIR__.DIRECTORY_SEPARATOR.'..'.DIRECTORY_SEPARATOR.'vendor'.DIRECTORY_SEPARATOR.'autoload.php';

$example = new Chrome();

$sites = [
    'https://nowsecure.nl',
    'https://bot.sannysoft.com/',
];

$example = new $browser();

foreach ($sites as $site) {
	$example->get($site);

	$a = 0;
	while ($a <= 10) {
		sleep(5);
		++$a;
	}
}

$example->driver()->close();

See examples folder for more.

Documentation

TODO

Contributing

We are open to contributions. However, please make sure you follow our coding standards (PSR-4 autoloading and custom styling). Please run php-cs-fixer before opening a pull request by running composer run-script cs.

License

MIT License, © Be Wilson and other contributers 2022-present.