Exemple #1
0
 public function run()
 {
     if ($this->remoteWebDriver === null) {
         $this->remoteWebDriver = RemoteWebDriver::create('http://127.0.0.1:8910', DesiredCapabilities::phantomjs());
     }
     $script = '';
     $script .= file_get_contents(__DIR__ . '/js/jquery-2.2.2.min.js');
     $script .= "\n\n";
     $script .= file_get_contents(__DIR__ . '/js/frontendscraper.js');
     $script .= "\n\n";
     while ($job = $this->jobBuffer->getJob()) {
         $status = $this->createInitStatus($job);
         $this->remoteWebDriver->get($job->url);
         $inject = $script;
         $inject .= file_get_contents($this->jobScriptDir . '/' . $job->script);
         $inject .= "\n\n return phantomScraper.getResult();";
         $res = $this->remoteWebDriver->executeScript($inject);
         $this->addJobs($res['jobs']);
         $this->addData($res['data']);
         $this->updateStatus($status);
     }
 }
        print "Plugin already activated.\n";
    } else {
        var_dump($driver->getPageSource());
        throw new UnexpectedValueException('Activating plugin failed.');
    }
    $driver->get(wordpress('/wp-admin/upload.php?mode=list'));
}
function close_webdriver()
{
    if (isset($GLOBALS['global_session_id']) && isset($GLOBALS['global_webdriver_host'])) {
        RemoteWebDriver::createBySessionId($GLOBALS['global_session_id'], $GLOBALS['global_webdriver_host'])->close();
    }
}
function reset_webservice()
{
    $request = curl_init();
    curl_setopt_array($request, array(CURLOPT_URL => 'http://' . getenv('HOST') . ':8080/reset'));
    $response = curl_exec($request);
    curl_close($request);
}
// $global_webdriver_host = 'http://127.0.0.1:4444/wd/hub';
// $global_driver = RemoteWebDriver::create($global_webdriver_host, DesiredCapabilities::firefox());
$global_webdriver_host = 'http://127.0.0.1:8910';
$global_driver = RemoteWebDriver::create($global_webdriver_host, DesiredCapabilities::phantomjs());
$global_session_id = $global_driver->getSessionID();
$window = new WebDriverDimension(1280, 1024);
$global_driver->manage()->window()->setSize($window);
register_shutdown_function('close_webdriver');
register_shutdown_function('restore_wordpress');
configure_wordpress_for_testing($global_driver);
print "\n";
<?php

require_once "../php-webdriver/vendor/autoload.php";
require_once "./src/BrowserDriver.php";
use Facebook\WebDriver\Remote\DesiredCapabilities;
use Facebook\WebDriver\Remote\RemoteWebDriver;
use BrowserStart\BrowserDriver;
$capabilities = DesiredCapabilities::phantomjs();
$browser = BrowserDriver::run(BrowserDriver::BROWSER_PHANTOMJS);
$remoteURL = $browser->startBrowser();
$wd = RemoteWebDriver::create($remoteURL, $capabilities, 5000);
$wd->get("http://docs.seleniumhq.org");
echo $wd->getTitle() . PHP_EOL;
$browser->closeBrowser();