用selenium和python下拉选择器

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (24)

我正在尝试从下拉列表中选择一个值。我检查了与之相关的所有帖子,但无法找到解决方案。

这是下拉列表的HTML代码:

<select class="paginado-select" onchange="javascript:paginadoListado(1);" name="registros_pagina">
<option></option>
<option>25</option>
<option selected="">50</option>
<option>75</option>
<option>100</option>
<option>125</option>
<option>150</option>
<option>175</option>
<option>200</option>
<option>225</option>
<option>250</option>
</select>

我已尝试使用此代码,但它没有在变量select中设置任何内容。

# third-party imports
from selenium import webdriver

driver = webdriver.Chrome("C:/Users/PycharmProjects/Tennis-Ranking/chromedriver.exe")
driver.get("http://www.rfet.es/clubes/prov/Madrid/28.html")
select = driver.find_element_by_xpath('//*[@id="paginacion-busqueda-abajo"]/form/table/tbody/tr/td[2]/select').click()
print(select)
select.selectByVisibleText('250');

driver.close()

我想选择选项250来显示一个页面中的所有俱乐部,以便移动到表格的所有页面,以便使用beautifulsoap来捕获html代码。

提问于
用户回答回答于

试试这个:

from selenium import webdriver
from selenium.webdriver.support.ui import Select
import time

driver = webdriver.Chrome('C:/Users/PycharmProjects/Tennis-Ranking/chromedriver.exe')
driver.get('http://www.rfet.es/clubes/prov/Madrid/28.html')
time.sleep(1)

selectPageNo = Select(driver.find_element_by_class_name("paginado-select"))
selectPageNo.select_by_visible_text('250')

也可以看看:

选择使用Selenium的Python WebDriver的正确方法是什么?

扫码关注云+社区

领取腾讯云代金券