【问题标题】:automatic date picking selenium自动日期采摘硒
【发布时间】:2021-01-09 21:18:24
【问题描述】:

我正在自动化一些与网络相关的任务。为此,我正在使用硒。但是,经过几个小时的尝试,我无法弄清楚自动选择日期。我有两个日历。看图更好理解。

[

我想要实现的是从左右日历中选择两个日期。我想发送两个日期并在这两个日历上设置这些日期(也是月份和年份)。我试图做类似的事情。我为“k-calendar k-first-month”课程选择了 xpath。

calender_left = driver.find_element_by_xpath('//*[@id="filter-section-timeFilters"]/div/div[2]/div/div/div/div[2]/div/div[1]/div/div[1]')
         
ActionChains(driver).move_to_element(calender_left).click().send_keys('02/12/20').perform()

但是,没有运气。

这是左侧日历的 css 元素的外观。

更新:我决定使用 xPath 点击月份和年份按钮。

【问题讨论】:

  • 您发送密钥的元素在屏幕截图中不可见。你还没有解释你到底有什么问题。你的行为的最终结果是什么?某种错误?您的定位器不可维护且不可读 - 您应该小心定位器的冗长(不要使用绝对 xPaths)。 html源会比这个屏幕更有用
  • @PiotrM。非常感谢您的反馈。我当前的代码什么都不做,也没有错误。我取了div的“k-calender k-first-month”类的xpath。
  • 它不是那样工作的 :) 您可以将键发送到输入元素。否则,您必须准备更复杂的代码来选择日期。我对那个页面使用 Kendo JQuery 是对的吗?能否提供页面的url或源代码?
  • 我已经解决了这个问题。我使用 xPaths 来回选择日期。但是,我感谢您的努力并打算帮助我 :) 这是很多 if else 条件... :(
  • 我可以想象,我一直致力于自动化 kendo datepicker,它是一个相当复杂的小部件。嗯,你可以看看这个项目来改进你的工作:github.com/atata-framework/atata-kendoui

标签: selenium selenium-webdriver


【解决方案1】:

是否有任何输入字段可以通过键盘输入日期?

如果是,则取该元素的xPath or clasName or cssSelector 并使用sendkeys。 参考链接https://www.browserstack.com/guide/datepicker-in-selenium会有帮助。

【讨论】:

猜你喜欢
  • 2015-01-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多