【问题标题】:Selenium-webdriver dropdownlist not work phpSelenium-webdriver 下拉列表不起作用 php
【发布时间】:2013-12-25 22:06:24
【问题描述】:

我想选择第一个下拉列表,然后是第二个,但我什至无法应对第一个 请解释为什么我会收到错误

<?php
require_once "phpwebdriver/WebDriver.php";
$webdriver = new WebDriver("localhost", "4444");
$webdriver->connect("firefox");                            
$webdriver->get("http://namami.org/PKstate.aspx");
//$element = $webdriver->findElement('css selector', 'select[id="DdlState"] option[value="Assam"]');
$element = $webdriver->findElement("css selector", 'select[id="DdlState"] option[value="Assam"]')->click();
//$element=$webdriver->findElement(By.cssSelector("#DdlState")).click();
//$element->‌​click();
$webdriver->close();
?>

致命错误:在第 7 行的 C:\xampp\htdocs\temp\1.php 中调用未定义的方法 WebDriver::findElement()

我找不到答案。使用 XAMPP。 我会很感激你的帮助。 问候安东

【问题讨论】:

    标签: php css selenium selenium-webdriver html-select


    【解决方案1】:

    您很可能需要延迟点击。

    您尝试使用 Selenium 抓取的项目是由 Javascript 生成的,我认为发生的事情是 Selenium 正在尝试查找尚未完全呈现的内容。

    尝试调用 sleep(1); 延迟 Selenium 操作,看看是否有效:

    <?php
    require_once "phpwebdriver/WebDriver.php";
    $webdriver = new WebDriver("localhost", "4444");
    $webdriver->connect("firefox");                            
    $webdriver->get("http://namami.org/PKstate.aspx");
    sleep(1); // allow the javascript some time to load
    //$element = $webdriver->findElement('css selector', 'select[id="DdlState"] option[value="Assam"]');
    //$element = $webdriver->findElement("css selector", 'select[id="DdlState"] option[value="Assam"]')->click();
    ////$element=$webdriver->findElement(By.cssSelector("#DdlState")).click();
    ////$element->‌​click();
    //$webdriver->close();
    //?>
    

    【讨论】:

    • 很遗憾没有解决问题,我没有看到页面
    • 请告诉我该怎么做
    • 注意到旧的 xampp webdriver - 在这里替换 code.google.com/p/php-webdriver-bindings 但现在是新的 注意,即使是他们的例子 注意:未定义的偏移量:C:\xampp\php\pear\phpwebdriver\WebDriver.php 中的 1在第 58 行注意:尝试在第 60 行获取 C:\xampp\php\pear\phpwebdriver\WebDriver.php 中非对象的属性,结果是空白页,应该是github.com/daluu/php-webdriver-bindings/blob/master/example.php
    【解决方案2】:
    <?php    
        require_once "phpwebdriver/WebDriver.php";    
        $webdriver = new WebDriver("localhost", "4444");    
        $webdriver->connect("firefox");
        $webdriver->get("http://namami.org/PKstate.aspx");    
        sleep(1); // allow the javascript some time to load    
        $element = $webdriver->findElement('id', 'DdlState');    
        $select = new Select($element);    
        $select->selectByValue("Assam");
        //?>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-09-23
      • 2018-08-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-08
      相关资源
      最近更新 更多