硒错法无签名:org.openqa.selenium.chrome.ChromeDriver.find_element_by_class_name()是适用于争论

问题描述 投票:0回答:2

我想找到我的硒文本字段,但我不知道该怎么做的正是(我用的第一次硒)。

我尝试了以下选项来尝试,但没有奏效

  1. driver.find_element_by_name(Token).send_keys(abcdefghijklm)
  2. driver.find_element_by_class_name('form-control.ng-untouched.ng-pristine.ng-valid').send_keys("asbfsbgkf")
  3. driver.find_element_by_cssSelector("input.form-control ng-untouched ng-pristine ng-valid[placeholder='Token string']")
  4. driver.findElementByCSSSelector("input.form-control ng-untouched ng-pristine ng-valid[placeholder='Token string']")
  5. driver.find_element_by_xpath("//input[@class='form-control ng-untouched ng-pristine ng-valid'][@type='text']").send_keys("asbfsbgkf")

有人,请帮我在这里。我真的很感激。

下面是HTML:(突出了一个我需要搜索 - “二值”输入)

`

<html lang="en" class="gr__xx_xx_xx_xx_xx_xx_xx">
<body data-gr-c-s-loaded="true"><!--  <g:savetophone id="savetomobile_tag" --><!--  onsuccess="successHandler"--><!--onfailure="failureHandler" size="small" theme="light" ></g:savetomobile>--><app-root _nghost-c0="" ng-version="4.4.6"><div _ngcontent-c0="" class="container-fluid">
  <nav _ngcontent-c0="" class="navbar navbar-expand-lg navbar-light bg-light">
    <button _ngcontent-c0="" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation" class="navbar-toggler" data-target="#navbarSupportedContent" data-toggle="collapse" type="button">
          <span _ngcontent-c0="" class="navbar-toggler-icon"></span>
        </button>
    <div _ngcontent-c0="" class="collapse navbar-collapse" id="navbarSupportedContent">
      <ul _ngcontent-c0="" class="navbar-nav mr-auto">
        <li _ngcontent-c0="" class="nav-item active">
          POC Tester
        </li>
      </ul>
    </div>
  </nav>
  <div _ngcontent-c0="" class="row">
    <div _ngcontent-c0="" class="col-12">
      <app-user-input _ngcontent-c0=""><div>
  <div class="jumbotron">
    <h3>Please provide the following information</h3>
    <hr class="my-4">
    <div>
    </div>
    
    <div class="input-group-mt-2">
      <span class="input-group-btn">
              <div class="d-inline-block dropdown" ngbdropdown="">
        <button aria-haspopup="true" class="btn btn-outline-primary dropdown-toggle" id="dropdownBasic1" ngbdropdowntoggle="" aria-expanded="false">environment</button>
        <div aria-labelledby="dropdownBasic1" ngbdropdownmenu="" class="dropdown-menu">
          <!----><button class="dropdown-item">status</button><button class="dropdown-item">status</button>
        </div>
      </div>
        
      </span>
      <input aria-describedby="basic-addon1" aria-label="URL" class="form-control ng-untouched ng-pristine ng-valid" placeholder="https://something.something.com" type="text">
    </div>
    
    <div class="input-group-mt-2">
      <span class="input-group-btn">
              <div class="d-inline-block dropdown" ngbdropdown="">
        <button aria-haspopup="true" class="btn btn-outline-primary dropdown-toggle" id="dropdownBasic1" ngbdropdowntoggle="" aria-expanded="false">Enjoy button</button>
        <div aria-labelledby="dropdownBasic1" ngbdropdownmenu="" class="dropdown-menu">
          <!----><button class="dropdown-item">Enjoy button</button><button class="dropdown-item">Offers &amp; Notifications</button>
        </div>
      </div>
        
      </span>
      <input aria-describedby="basic-addon1" aria-label="URL" class="form-control ng-untouched ng-pristine ng-valid" placeholder="https://something.somewhere.com" type="text">
    </div>
    <div class="input-group mt-2">
      <span class="input-group-btn">
        <button class="btn  btn-secondary" type="button">First value</button>
      </span>
      <input aria-describedby="basic-addon1" aria-label="URL" class="form-control ng-untouched ng-pristine ng-valid" placeholder="test value" type="text">
    </div>
    <div class="input-group mt-2">
      <span class="input-group-btn">
        <button class="btn  btn-secondary" type="button">Second Value</button>
      </span>
      **<input aria-describedby="basic-addon1" aria-label="URL" class="form-control ng-untouched ng-pristine ng-valid" placeholder="user value" type="text">**
    </div>
    
    
    <div class="input-group mt-2">
      <span class="input-group-btn">
        <button class="btn  btn-secondary" type="button">third value</button>
      </span>
      <input aria-describedby="basic-addon1" aria-label="URL" class="form-control ng-untouched ng-pristine ng-valid" placeholder="test user" type="text">
    </div>
    <div class="mt-2">
      <button class="btn btn-primary">Generate value</button>
    </div>
    <!----><div class="mt-4">
      press:
      
      
      <div id="location">
      </div>
    </div>
    <div class="mt-2">
      <span></span>
    </div>
    <ngb-progressbar type="success">
    <div class="progress">
      <div aria-valuemin="0" role="progress" class="progress bg-success" aria-valuenow="0" aria-valuemax="100" style="width: 0%;">
        <!---->
      </div>
    </div>
  </ngb-progressbar>
  </div>
  
  <div class="mt-5">
    <p>content:</p>
    <textarea class="form-control ng-untouched ng-pristine ng-valid" rows="20"></textarea>
  </div>
</div>
</app-user-input>
    </div>
  </div>
</div></app-root><script type="text/javascript" src="inline.0c00000000000000ca85.bundle.js"></script><script type="text/javascript" src="000000000000000015b.bundle.js"></script><script type="text/javascript" src="scripts.0000000000000fc0000.bundle.js"></script><script type="text/javascript" src="vendor.00000000fgf000000gdf.bundle.js"></script><script type="text/javascript" src="main.cf3000000000000eb000a.bundle.js"></script></body></html>
selenium missingmethodexception
2个回答
0
投票

你的XPath在大多数情况下返回列表。因为我们知道,我们正在寻找的第二输入元件,我们正好可以从下面的代码列表中的第二个结果:

second_input_xpath = "//div[@class='input-group-mt-2'][2]//input"
driver.find_element_by_xpath(second_input_xpath ).send_keys("asbfsbgkf")

关于主要错误在标题看起来你没有正确初始化自己的Chrome的webdriver。我建议在硒文档看here


0
投票

貌似为了使其独特尝试这种具有相同的类name.So所有输入字段。

driver.find_element_by_xpath("(//input[@class='form-control ng-untouched ng-pristine ng-valid'])[n]").send_keys("value")

where n=1,2,3...n

PS N = 1为第一element.Kindly让我知道,如果这有助于。

© www.soinside.com 2019 - 2024. All rights reserved.