python选择日期控件_selenium + python 定位日期控件(处理iframe)两种方法

对于日期控件的处理用了两个办法。

1.由于日期控件输入框是只读属性的如

其中readonly的意思就是只读。所以方法1就是调用js把这个只读属性删了,之后在send_keys值进去如例:

js = '$(\'input[id=txtDate1]\').removeAttr(\'readonly\')'

browser.execute_script(js)

browser.find_element_by_id('txtDate1').send_keys('2013-09-11 18:25')

2.方法1其实有点取巧的意思在看下方法2

日期控件其实在html里面也是一个iframe。那么我们只需要来定位到这个iframe就OK。

一般情况 下iframe会有id/name这样的元素。 在定位时来按id/name查询即可。(具体例子可能 百度)

这里介绍的是无id/name时如何处理,代码如下

dat = browser.find_element_by_tag_name('iframe')

browser.switch_to_frame(dat)

browser.find_element_by_xpath(".//*[@id='dpTodayInput']").click()

browser.switch_to_default_content()

使用tag_name来找到这个iframe(前提是你的iframe为可用(不是灰色))

之后使用python webdriver的 switch_to_frame()方法来定位到这个iframe上面

使用xpath的方法来找到具体你要点击日期控件上的按钮

由于你现在处于现在iframe里面。所以你需要跳出,方法switch_to_default_content()。

(注:不是只有tag_name方法才能找到iframe,使用别的也可以,欢迎大家来补充)

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值