AttributeError:“WebDriver”对象在通过Selenium对元素使用select \u by_visible_text()方法时没有属性“select”

2024-09-28 18:56:55 发布

您现在位置:Python中文网/ 问答频道 /正文

在将数据写入表单后,我得到了弹出菜单。在

我试图从中选择一些并继续使用selenium,但是所有的变体都在div标记中

<div class="menu menu_theme_islands menu_size_m sg-datalist menu__control i-bem sg-datalist_js_inited menu_js_inited menu__control_js_inited sg-datalist_focused menu_focused menu_hovered" data-bem="{&quot;menu&quot;:{},&quot;sg-datalist&quot;:{}}" role="menu" tabindex="0" aria-activedescendant="uniq155307974964633">
    <div class="menu__item menu__item_theme_islands i-bem i-bem" data-bem="{&quot;menu__item&quot;:{&quot;val&quot;:30863}}" role="menuitem" id="uniq155307974964651" aria-disabled="">Магазин детской одежды</div>
    <div class="menu__item menu__item_theme_islands i-bem i-bem" data-bem="{&quot;menu__item&quot;:{&quot;val&quot;:30859}}" role="menuitem" id="uniq155307974964652" aria-disabled="">Детский магазин</div>
</div>

我在努力

^{pr2}$

但它的回报

AttributeError: 'WebDriver' object has no attribute 'select_by_visible_text'

如何从弹出窗口中选择smth?在


Tags: divdatajssgitemthemeclassrole
2条回答
from selenium.webdriver.support.select import Select
Select select=Select(driver.find_element_by_css_selector("div.menu__control_js_inited"))
select.select_by_index(1)

**选项2:**如果上述方法不起作用,请尝试此方法。在

^{pr2}$

选项3:

element=driver.find_element_by_css_selector("div.menu__control_js_inited")
ActionChains(driver).move_to_element(element).perform()
WebDriverWait(driver, 20).until(expected_conditions.element_to_be_clickable((By.XPATH, "(//div[@class='menu__item menu__item_theme_islands i-bem i-bem'])[1]"))).click()

请确保您需要以下进口产品。在

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions
from selenium.webdriver.support.select import Select
from selenium.webdriver import ActionChains

此错误消息。。。在

AttributeError: 'WebDriver' object has no attribute 'select_by_visible_text'

…表示您试图通过不受支持的WebDriver实例使用select_by_visible_text()。在

解决方案

要单击文本为МаГазиеееескоееескоееежы因为所需元素是<div>元素,可以使用以下解决方案:

^{pr2}$

注意:您必须添加以下导入:

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC

相关问题 更多 >