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

如何用CSS Selector定位Booking.com日历组件的下月切换箭头

解决Booking.com航班日历下月箭头的稳定CSS定位方案

以下是几个不易随网站更新失效的定位思路,适配你的POM框架场景:

  • 利用无障碍属性定位
    多数正规网站会保留aria-label这类无障碍属性用于辅助功能,这类属性很少随版本变更。下月箭头按钮通常带有类似“下个月”或“Next month”的描述,直接用这个属性匹配:

    button[aria-label*='下个月']
    

    英文界面可替换为:

    button[aria-label*='Next month']
    
  • 结合父容器层级定位
    找到日历头部这类相对稳定的父容器(比如包含Calendar-module__header类名的容器,核心模块类名不会频繁修改),再定位容器内的最后一个按钮(下月箭头通常在头部右侧):

    div[class*='Calendar-module__header'] button:last-of-type
    
  • 基于图标特征定位
    下月箭头本质是向右的图标,其SVG路径几乎不会变更。常见的向右箭头SVG路径可这样定位:

    button svg[viewBox='0 0 24 24'] path[d*='M9 18l6-6-6-6']
    

对应的Java代码示例:

// 方式1:用aria-label定位
WebElement nextMonthBtn = driver.findElement(By.cssSelector("button[aria-label*='下个月']"));

// 方式2:结合父容器定位
WebElement nextMonthBtn = driver.findElement(By.cssSelector("div[class*='Calendar-module__header'] button:last-of-type"));

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 14:41:00