如何使用selenium python单击活动日期选择器?

如何使用selenium python单击活动日期选择器?,python,python-3.x,selenium,datepicker,css-selectors,Python,Python 3.x,Selenium,Datepicker,Css Selectors,因此,页面上有多个日历(日期选择器),我已设法单击所需的日历。 我想点击活动日期(当前日期)。class=“活动日” 单击所需的日历图标后如何找到此元素 当我为这个复制选择器时,我得到 body > div:nth-child(27) > div.datepicker-days > table > tbody > tr:nth-child(4) > td.day.active 当我检查元素并搜索td.day.active时,我能够到达该元素。 所以我使用

因此,页面上有多个日历(日期选择器),我已设法单击所需的日历。

我想点击活动日期(当前日期)。class=“活动日” 单击所需的日历图标后如何找到此元素

当我为这个复制选择器时,我得到

body > div:nth-child(27) > div.datepicker-days > table > tbody > tr:nth-child(4) > td.day.active
当我检查元素并搜索td.day.active时,我能够到达该元素。

所以我使用了下面的语法来点击它

WebDriverWait(driver, 30).until(lambda driver: driver.find_element_by_css_selector('td.day.active')).click()
但是获取
ElementNotVisibleException

我想要一个通用的脚本来做这件事。我想选择此日历上的活动日期。
单击xpath不起作用,因为它没有绝对路径。

一个html页面可能有多个日期选择器 若我们想点击特定日期选择器的活动日期,那个么可以使用选择器

.dropdown-menu:nth-child(9) > .datepicker-days .active
其中“9”是该日期选择器的出现。i、 e.页面上有9个或更多datepicker元素

所以对于上面的问题,孩子是27岁,所以下面的代码将点击datepicker的活动日期(当前日期)

WebDriverWait(driver, 30).until(lambda driver: driver.find_element_by_css_selector(".dropdown-menu:nth-child(27) > .datepicker-days .active")).click()

注意:即使您设法单击日历xpath,单击活动日期也需要日历的第n个子值。

您能提供日历元素的url吗?实际上,它是从我的工作中剪下来的,仅在我的office vpn凭据上打开,在其他任何地方都不起作用。然而,让我检查一下类似的东西:注意:在这个网站中,iframe元素是存在的,与我的不同。