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();