在 Selenium 中根据多个值获取数据

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

select中有多个选项。使用下面的代码,我只能根据选项检索数据。如果有多个值,例如:value='1628', value='1373' value='1441',如何同时拉取?

shr = browser.find_element_by_xpath("/html/body/div\[1\]/div/section\[2\]/div/div/div\[1\]/div\[2\]/form/fieldset/div/div\[2\]/select /option\[@value='1628'\]").click()
shr = browser.find_element_by_xpath("/html/body/div\[1\]/div/section\[2\]/div/div/div\[1\]/div\[2\]/form/fieldset/div/div\[2\]/select /option\[@value='1628','1373','1441'\]").click()

还有

shr = browser.find_element_by_xpath("/html/body/div\[1\]/div/section\[2\]/div/div/div\[1\]/div\[2\]/form/fieldset/div/div\[2\]/select /option\[@value='1628'\] And \[@value='1373'\] And \[@value='1441'\]").click()

我尝试了这样的方法,但没有成功。

selenium-webdriver extract selenium-webdriver-python
1个回答
0
投票

如果您想要特定选择标签中的所有选项,请不要指定选项标签的“@value”属性。
直到 xpath 中的 '/option' 为止,您将获得所有选项元素。

select_option_list = browser.find_elements_by_xpath("/html/body/div\[1\]/div/section\[2\]/div/div/div\[1\]/div\[2\]/form/fieldset/div/div\[2\]/select/option")#to select all the options inside the select
for i in select_option_list:
    print(i.get_attribute("innerHTML")) #to print the values of options
© www.soinside.com 2019 - 2024. All rights reserved.