使用Selenium和python下拉选择器

时间:2019-05-29 06:25:44

标签: python selenium selenium-webdriver

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

这是我的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代码。

非常感谢您的回答。

2 个答案:

答案 0 :(得分:0)

尝试一下:

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')

另请参阅:

What is the correct way to select an using Selenium's Python WebDriver?

答案 1 :(得分:0)

它就像一种魅力。非常感谢您,也感谢您提供的文档。