You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Selenium和Python自动点击日历中高亮的当日日期

自动选择当日/次日日期的Selenium实现

根据你提供的日历HTML结构,这里直接给出两种场景的实现方案:

1. 选择当日日期

观察HTML可见,当日日期的按钮带有v-date-picker-table__current专属类,直接通过这个类定位元素点击即可,无需计算日期:

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()
# 先完成页面打开、日历弹窗触发等前置操作(根据实际场景补充)

# 定位并点击当日日期按钮
today_button = driver.find_element(By.CSS_SELECTOR, ".v-date-picker-table__current")
today_button.click()

2. 选择次日日期

若需选择第二天的日期,先计算次日的日期数字,再通过按钮文本定位元素:

from selenium import webdriver
from selenium.webdriver.common.by import By
from datetime import datetime, timedelta

driver = webdriver.Chrome()
# 完成页面打开、日历弹窗触发等前置操作

# 计算次日的日期数字
tomorrow = datetime.now() + timedelta(days=1)
tomorrow_day = str(tomorrow.day)

# 通过文本定位次日按钮并点击
tomorrow_button = driver.find_element(By.XPATH, f"//div[@class='v-btn__content' and text()='{tomorrow_day}']/parent::button")
tomorrow_button.click()

补充注意事项

  • 确保代码执行前日历弹窗已完全加载,必要时添加等待逻辑避免元素未找到:
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
    
    # 等待当日按钮可点击后再操作
    WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, ".v-date-picker-table__current"))).click()
    
  • 若遇到跨月场景(比如当月最后一天选次日),需先添加月份切换按钮的点击逻辑,再定位日期,这部分可根据实际页面结构补充。

内容的提问来源于stack exchange,提问作者Luiz Angelo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 21:18:36