【问题标题】:Autofill dropdown input python using selenium使用硒自动填充下拉输入python
【发布时间】:2021-08-16 12:26:52
【问题描述】:

我想自动填充下拉输入

例如:

.css:

<input class="ui-dropdown-filter ui-inputtext ui-widget ui-state-default ui-corner-all" autocomplete="off" type="text">

</div><div class="ui-dropdown-items-wrapper" style="max-height: 200px;"><ul class="ui-dropdown-items ui-dropdown-list ui-widget-content ui-widget ui-corner-all ui-helper-reset">

<li class="ng-tns-c1-0 ui-dropdown-item ui-corner-all ng-star-inserted" style=""><!----><span class="ng-tns-c1-0 ng-star-inserted">Alabma</span><!----></li>

<li class="ng-tns-c1-0 ui-dropdown-item ui-corner-all ng-star-inserted" style=""><!----><span class="ng-tns-c1-0 ng-star-inserted">Alaska</span><!----></li>

</ul>

我试过了:

 elementt = driver.find_element_by_css_selector(".ui-dropdown")
 driver.execute_script("arguments[0].click();", elementt)

 select = Select(driver.find_element_by_class_name('input.ui-dropdown-filter.ui-inputtext.ui-widget.ui-state-default.ui-cornee-all'))

 select.select_by_visible_text("Alaska")

但是什么都没有发生,请问有什么帮助吗?

【问题讨论】:

  • 要使用 Select 类,DOM 中的元素应该在select 标签中。您需要单击下拉元素,找到该选项并单击它。
  • 你可以分享网址吗?

标签: python python-3.x selenium


【解决方案1】:

如果您能够点击下拉菜单:

elementt = driver.find_element_by_css_selector(".ui-dropdown")
driver.execute_script("arguments[0].click();", elementt)

那你应该试试:

driver.find_element_by_xpath("//span[text()='Alabma']/..").click() 

点击选项,您也可以根据需要更改文本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-10
    • 1970-01-01
    • 2021-12-21
    • 2012-05-18
    • 2011-08-17
    • 2016-07-26
    • 1970-01-01
    相关资源
    最近更新 更多