selenium之 时间日期控件的处理(转)

我们不去搞时间日期空间,我们把它当成一个普通的input框处理就好了!

但是,很多此类型input框都是禁止手动输入的,怎么办?

很简单,用js把禁止输入的readonly属性干掉就好了。

来吧,看一下示例:

示例网址:http://www.sucaijiayuan.com/api/demo.php?url=/demo/20141108-1/

代码:

# -*- coding: utf-8 -*-

from selenium import webdriver
from time import sleep

driver = webdriver.Firefox()
driver.get(‘http://www.sucaijiayuan.com/api/demo.php?url=/demo/20141108-1/‘)

driver.switch_to.frame(‘iframe‘)

# js = "document.getElementById(‘txtBeginDate‘).removeAttribute(‘readonly‘)" # 1.原生js,移除属性
# js = "$(‘input[id=txtBeginDate]‘).removeAttr(‘readonly‘)" # 2.jQuery,移除属性
# js = "$(‘input[id=txtBeginDate]‘).attr(‘readonly‘,false)" # 3.jQuery,设置为false
js = "$(‘input[id=txtBeginDate]‘).attr(‘readonly‘,‘‘)" # 4.jQuery,设置为空(同3)

driver.execute_script(js)

driver.find_element_by_id(‘txtBeginDate‘).send_keys(‘2016-08-24‘)
sleep(2)
print driver.find_element_by_id(‘txtBeginDate‘).get_attribute(‘value‘)

driver.quit()

结果:

2016-08-24

当然,这里还得说一下,有人说他遇到的日期时间框没有id、name,这里提醒一下,这就是普通的input框,定位方法太多了,class、tag name、xpath、css,总有一种适合你。同时友情提醒一下:注意时刻提防iframe!

---------------------
作者:huilan_same
来源:CSDN
原文:https://blog.csdn.net/huilan_same/article/details/52385401

原文地址:https://www.cnblogs.com/pengpeng002/p/9906120.html

时间: 2024-09-30 09:54:57

selenium之 时间日期控件的处理(转)的相关文章

mui 时间日期控件(浏览器上无法查看,在手机端可以点击)

<head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" /> <title></title> <link href="css/mui.mi

Android ApiDemos 学习——时间日期控件

时间日期进程会用到平时的开发中,android内置了两种可交互的时间日期控件,一种是对话框形式的,一种是内嵌式的. 分别使用了android的类TimePickerDialog.DatePickerDialog以及TimePicker,其中TimePicker需要在layout中进行设置 对话框形式的时间控件 public class DateDialog extends Activity { // where we display the selected date and time priv

My97DatePicker时间日期控件的使用

My97DatePicker是一款非常灵活好用的日期控件.使用非常简单. 1.下载My97DatePicker组件包 2.在页面中引入该组件js文件: <script type="text/javascript" src="My97DatePicker/WdatePicker.js"></script> 3.页面使用两个方式: 常规调用:  <input id="d11" type="text"

一个自定义时间日期控件的使用

一个自定义时间日期的控件,依赖类是GitHub下的.比较好用,现在将使用流程记下: 1.布局文件 <TextView android:id="@+id/tv_remunera_day_datepick" style="@style/input_datepicker" android:layout_width="fill_parent" android:layout_height="wrap_content" androi

bootstrap datetimepicker时间日期控件

github地址:https://github.com/smalot/bootstrap-datetimepicker Both Date and Time picker widget based on twitter bootstrap (supports Bootstrap v2 and v3) http://www.malot.fr/bootstrap-datetimepicker/ 绑定输入框,并设置format选项: <input type="text" value=&

python selenium 处理时间日期控件(十五)

测试过程中经常遇到时间控件,需要我们来选择日期,一般处理时间控件通过层级定位来操作或者通过调用js来实现. 1.首先我们看一下如何通过层级定位来操作时间控件. 通过示例图可以看到,日期控件是无法输入日期,点击后弹出日期列表供我们选择日期,自己找了一个日期控制演示一下,通过两次定位,选择了日期 #-*- coding:utf-8 -*- import time from selenium import webdriver driver = webdriver.Chrome() driver.get

12 Python+selenium对日期控件进行处理(采用执行JS脚本)

[环境信息] Python34+IE+windows2008 [说明] 1.对于日期控件,没有办法通过定位元素再直接传值的方式处理.可以采用执行JavaScript处理. PS:还要去学学js怎么写,不然要用的时候就只有到处copy了. [示例] 1.对于如下格式的日期控件需要用JS处理. 2.处理方式:通过driver.execute_script(js)执行. #问题消除时间,调用JS的当前时间 js = "function getCurrentDate() {" " v

jquery日期控件使用,起止时间

1.下载jQuery核心文件,datepicker是轻量级插件,只需jQuery的min版本就行了,然后到官网http://jqueryui.com/download下载jquery-ui压缩包(可以选择喜欢的theme),里面就包含对datepicker的支持,当然您也可以网站http://marcgrabanski.com/pages/code/jquery-ui-datepicker下载datepicker,包括ui.core.js和ui.datepicker.js. 2.在HTML中引用

日期DatePicker与时间TimePicker控件

在AndroidApp应用中,设置日期和时间时间也是经常遇见的,下面我们一起学习一下. 我们需要学习Android中的基本控件:(1)日期选择控件DatePicker (2)时间选择控件TimePicker. 一.设计登录窗口 打开"res/layout/activity_main.xml"文件.  1.分别从工具栏向activity拖出1个日期选择控件DatePicker. 1个时间选择控件TimePicker.1个按钮Button.控件来自Time&Date.Form Wi