问题背景

想要实现每天点击不同的日期,去自动操作一些重复的case

PCUI自动化处理日期的问题及解决方案_当前日期


解决思路

先获取元素信息 

 td[title='2023-09-09'] div

发现这种格式 还是比较好处理的  只需要每天换日期就可以了 

from datetime import datetime, timedelta
from selenium import webdriver

# 获取当前日期
current_date = datetime.now().date()

# 计算目标日期 我这里不能选择当天的所以加1天
target_date = current_date + timedelta(days=1)  # 假设目标日期为当前日期的下一天

# 构建动态的XPath表达式
xpath_expression = f"td[title='{target_date}'] div"

# 点击元素
self.click(xpath_expression)

总结:使用datetime模块获取当前日期,并通过timedelta函数将其增加了一天以得到目标日期。然后,我们将目标日期插入到XPath表达式中,在每天点击不同日期时定位正确的元素


疑问

F:如果到了9.30 也会加1天  会变成9.31还是变成10.1号?

Q:查看规则得知datetime方法会根据日期的处理规则进行运算,在日期运算中,当日期增加一天时,如果超过了当前月份的最大天数,日期会自动进位到下一个月。对于9月30日加一天,结果将是10月1日