facebook/php-webdriverは、セレンとPHPの素晴らしいクライアントです。
Web作業(OPが欲しい)を自動化するために、またはphp-webdriverをテストフレームワークに単純に統合することができます。すでにこれを提供するいくつかのプロジェクトがあります。
すべて
ダウンロードをインストールし、facebook/php-webdriverをインストールします。 composer require facebook/webdriver
Download Selenium &開始してください。 java -jar selenium-server-standalone-#.jar
Download Quick Javaをプロジェクトディレクトリに配置します。
使用
この例では、我々はjavascript
とcookies
以外のすべてを無効にする拡張機能quickjava
を使用しています。ここ
もっと見るプリファレンス設定:
https://github.com/ThatOneGuyDotNet/QuickJava/blob/master/defaults/preferences/defaults.js
もっと見る例はこちらコマンド:
https://github.com/facebook/php-webdriver/wiki/Example-command-reference
use Facebook\WebDriver\Firefox\FirefoxProfile;
use Facebook\WebDriver\Firefox\FirefoxDriver;
use Facebook\WebDriver\Remote\DesiredCapabilities;
use Facebook\WebDriver\Remote\RemoteWebDriver;
// Change this to the path of you xpi
$extensionPath = $this->container->getParameter('kernel.root_dir').'/../bin/selenium/quickjava-2.0.6-fx.xpi';
// Build our firefox profile
$profile = new FirefoxProfile();
$profile->addExtension($extensionPath);
$profile->setPreference('thatoneguydotnet.QuickJava.curVersion', '2.0.6.1');
$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.Images', 2);
$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.AnimatedImage', 2);
$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.CSS', 2);
//$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.Cookies', 2);
$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.Flash', 2);
$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.Java', 2);
//$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.JavaScript', 2);
$profile->setPreference("thatoneguydotnet.QuickJava.startupStatus.Silverlight", 2);
// Create DC + Driver
$dc = DesiredCapabilities::firefox();
$dc->setCapability(FirefoxDriver::PROFILE, $profile);
$driver = RemoteWebDriver::create($host, $dc);
$driver->get('http://stackoverflow.com');
// Do stuff - https://github.com/facebook/php-webdriver/wiki/Example-command-reference
//$driver->findElement(WebDriverBy::id("element-id"));
// The HTML Source code
$html = $driver->getPageSource();
// Firefox should be open and you can see no images or css was loaded
[php-webdriver](https://github.com/facebook/php-webdriver)ライブラリで十分です。[Steward](https://github.com)などのツールを使うと設定がさらに簡単になります/ lmc-eu/steward)。私は、Selenium IDEで時間を無駄にしないで、PHPの中に目的のシナリオを書くだけでよいと思います。 –