如何使用Selenium-Python从日历中选择第二天

尼察斯

无法使用Selenium在日历中选择明天的日期

我尝试使用find_element_by_css_selector和find_element_by_xpath,但似乎没有任何效果。

import time
import datetime
from time import strftime
from selenium import webdriver
browser = webdriver.Chrome("C:\Program Files (x86)\Google\Chrome\Application\chromedriver_win32\chromedriver.exe")
browser.get('https://www.****.com')

browser.find_element_by_id("UserName").send_keys("***")
browser.find_element_by_id("password").send_keys("***")
browser.find_element_by_id("submit-sign-in").click()


browser.find_element_by_id("Information").click()
browser.find_element_by_id("Amenities").click()

browser.find_element_by_id("reserve").click()
browser.find_element_by_id("resv-date").click()

******#The code works fine until here**********

#Trying to pick tomorrows date from the calendar.
browser.find_element_by_css_selector("a.ui-state-default.ui-state-active").click()

Not getting an error message but it doesn't select the required date

我已附上以下图片:

<td class="  ui-datepicker-today" data-handler="selectDay" data-event="click" data-month="4" data-year="2019"><a class="ui-state-default ui-state-highlight" href="#">17</a></td>
<a class="ui-state-default ui-state-highlight" href="#">17</a></td>
<td class=" ui-datepicker-week-end  ui-datepicker-current-day" data-handler="selectDay" data-event="click" data-month="4" data-year="2019"><a class="ui-state-default ui-state-active" href="#">18</a></td>
<a class="ui-state-default ui-state-active" href="#">18</a>

片段日历日期选择器

副手

您必须使用以下CSS选择第二天。

td.ui-datepicker-current-day + td

码:

browser.find_element_by_css_selector("td.ui-datepicker-current-day+td").click()

+相邻的同级组合器。如果您在当前示例中考虑td.ui-datepicker-current-day正在选择当前日期,例如,17但我们要选择以下同胞,则使用+将选择同胞,并且我们指定将相邻同胞过滤为td

如果要在相同情况下使用xpath,则可以使用following-sibling并按标记名过滤,td如下所示。

//td[contains(@class, 'ui-datepicker-current-day')]/following-sibling::td

简而言之+,css中的内容几乎等同following-sibling于xpath中的内容,这将有助于选择同级项。

有关上述方法,请参考CSS和Xpath上的以下链接。

的CSS

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何找到第二天?

如何在sqlite中选择从今天下午12点到第二天凌晨5点的销售

如何在php中找到第二天

如何输出第二天的日期时间

在PHP的strtotime中使用第二天

使用R中的Forecast()匹配“第二天”

如何仅使日期选择器从当前日期的第二天开始进行选择

如何使用jQuery获取第二天的日期和下个月的日期

如何根据用户输入的日期获取第二天的日期?

如何从第二天开始指定时间

如何在MySQL中的第二天和午夜之后查找事件

如何获取今天和第二天上午08点之间的时差-MYSQL

如何以YYYY-MM-DD格式在JS中获取第二天的日期?

我们如何在Swift中找到第二天

如何计算到下个月的第二天?

气流:如何安排工作日在工作日后的第二天开始?

如何在Android中将当前时间与第二天时间进行比较?

如何在Swift中将TimeDelay设置为第二天@ 5am?

快速注册用户后第二天早上该如何定义?

如何在 R 中将日期时间更改为第二天的特定时间?

如何将第二天添加到时间?

使用Groovy将日期增加到第二天

使用“at”命令在第二天定时录制视频并且只做一次

熊猫-使用第二天的值填充新列

使用 moment.js 生成进入第二天的 30 分钟时间段

如何在Android的日期选择器对话框中显示所选日期的第二天日期?

如何使用熊猫python从开始时间到第二天开始时间重复添加一小时

如何从给定时刻的一天日期时间第二天结束了吗?(JAVA)

如何根据可用性表计算第二天/同一天?