【问题标题】:How to select value of drop down list with selenium in python如何在python中使用硒选择下拉列表的值
【发布时间】:2020-05-27 04:50:42
【问题描述】:

我刚开始我的第一个 python 项目,已经花了几个小时寻找解决方案,但找不到任何东西。

我想通过从下拉列表中选择值来填写网站。我的问题是这些列表的值不像我在这个论坛中找到的解决方案那样硬编码。

我查看了网站,做了三张截图(点击前、点击时和选择项目后)

before clicking

by cklicking

after selecting

我能够打开下拉列表并读取列表的所有值,但无法选择其中一个

css = 'body > main > section > section > div.ut-navigation-container-view--content > div > div.ut-pinned-list-container.ut-content-container > div > div.ut-pinned-list > div.ut-item-search-view > div:nth-child(2)'
iElement = browser.find_element_by_css_selector(css)
SpanVariableValue = iElement.text
#prints selected value or default 
print (SpanVariableValue )

iElement.click()
SpanVariableValue = iElement.text
#prints all elemets of drop-down
print (SpanVariableValue)

#drop-down doesn't work after the following code 
browser.execute_script("arguments[0].innerText = 'SILVER'", iElement)

谁能帮我解决我的问题?

干杯, 安迪

编辑:对不起,我在原帖中添加截图时出错了

【问题讨论】:

    标签: python selenium


    【解决方案1】:

    在查看 Selenium 文档时不确定您是否已经尝试过此操作,您可以尝试以下方法:

    Selenium.click()
    

    示例命令如下所示:

    element = driver.find_element :xpath, '//input[@name="q"]'
    element.click()
    

    您可以将元素 xpath 设置为下拉菜单的元素,然后 Selenium 将能够单击您想要的选项。

    【讨论】:

    • 是的,我检查了文档,我已经找到了很多像你这样的提示,但我的问题是我的 xpath 看起来完全不同 /html/body/main/section/section/div[2]/ div/div[2]/div/div[1]/div[1]/div[2]
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-11
    • 1970-01-01
    • 2021-12-13
    • 2015-12-31
    • 1970-01-01
    相关资源
    最近更新 更多