首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何选择用css_selector selenium python?

如何选择用css_selector selenium python?
EN

Stack Overflow用户
提问于 2019-08-31 22:51:16
回答 1查看 66关注 0票数 0

我有正确的代码,只是它需要很长的时间,直到它选择一个随机的月份。它会遍历所有选项来找到那个选项。有没有办法让它更快些?

已尝试:

代码语言:javascript
复制
randomMonth = random.choice(["Jan","Feb","Mär","Apr","Mai","Jul","Aug","Sep","Okt","Nov","Dez"])
for i in driver.find_elements_by_tag_name("option"):
    if i.text == randomMonth:
        i.click()

Payoneer.com日期选择器月份选择的登录页

代码语言:javascript
复制
<select class="ui-datepicker-month" data-handler="selectMonth" data-event="change">
    <option value="0" selected="selected">Jan</option>
    <option value="1">Feb</option>
    <option value="2">Mar</option>
    <option value="3">Apr</option>
    <option value="4">May</option>
    <option value="5">Jun</option>
    <option value="6">Jul</option>
    <option value="7">Aug</option>
    <option value="8">Sep</option>
    <option value="9">Oct</option>
    <option value="10">Nov</option>
    <option value="11">Dec</option>
</select>
EN

回答 1

Stack Overflow用户

发布于 2019-09-01 00:32:30

你们已经很接近了。有一个帮助器类可以使处理SELECT元素变得更容易。您可以使用Select类,并在不进行循环的情况下选择所需的类。

代码语言:javascript
复制
from selenium.webdriver.support.ui import Select
...
randomMonth = random.choice(["Jan","Feb","Mär","Apr","Mai","Jul","Aug","Sep","Okt","Nov","Dez"])
select = Select(driver.find_element_by_css_selector("select.ui-datepicker-month"))
select.select_by_visible_text(randomMonth)

注意:如果页面上有很多SELECT元素,你可能必须调整我选择的CSS选择器,但是选择一个随机月份,然后从下拉菜单中选择它的基础知识应该会让你找到正确的方向。

有关Select类的更多信息,请参见the python docs

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57739024

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档