hisense12396
2019-02-11 14:03Python selenium,无法定位页面中的日期选择框,尝试用JS关掉只读失败?
0、这是需要定位的位置:
<input class="form-control listDate startDate" readonly="readonly" name="startDate" value="" type="text">
1、Python selenium,无法定位页面中的日期选择框,面向百度编程后发现可能是句柄的位置不对,于是加上了
el_iframe=el_ywjg=browser.find_element_by_id('frame_content')
browser.switch_to.frame('frame_content')
2、仍然定位不到日期选择框,继续搜索后觉得可能是因为“readonly”属性,于是决定使用js去掉,但是这个框没有Id,于是换用getElementsByName(半路出家,完全不懂js,不知道对不对),于是变成了
js="document.getElementsByName('startDate').removeAttribute('readonly')"
browser.execute_script(js)
_报错:TypeError: document.getElementsByName(...).removeAttribute is not a function
3、查菜鸟教程发现“HTML DOM Document 对象方法”中,document.getElementById()返回的是一个对象,而我用的getElementsByName()返回的是一个对象集合,所以加上了一个[0],变成:
js="document.getElementsByName('startDate')[0].removeAttribute('readonly')"
browser.execute_script(js)
```__
_TypeError: document.getElementsByName(...)[0] is undefined
无计可施了,而且这个问题去搜索都搜不出来了……请各位前辈指教。_
- 点赞
- 回答
- 收藏
- 复制链接分享
2条回答
为你推荐
- 爬虫小白求问python+selenium模拟登陆12306后如何获取如下图的这个弹出框自动化点击确定?
- python
- 2个回答
- python+selenium怎么将变量放入到执行语句中
- selenium
- 1个回答
- python的selenium如何等待整个页面加载完成
- python
- 1个回答
- selenium定位js下拉的菜单
- python
- html5
- javascript
- 3个回答
- 如何利用python selenium 判断某个网页是否加载完毕
- python
- 4个回答
换一换