selenium “could not be scrolled into view”
学习selenium对话框处理出现错误
a.py内容:
from selenium import webdriver
import time
driver = webdriver.Firefox()
driver.get("http://www.baidu.com/")
time.sleep(3)
#点击登录链接
driver.find_element_by_name("tj_login").click()
#通过二次定位找到用户名输入框
div=driver.find_element_by_class_name("tang-content").find_element_by_name("userName")
div.send_keys("username")
#输入登录密码
driver.find_element_by_name("password").send_keys("password")
#点击登录
driver.find_element_by_id("TANGRAM__PSP_10__submit").click()
driver.quit()
运行a.py的时候出现 ElementNotInteractableException: Message: Element <a class="lb" href="https://passport.baidu.com/v2/?login&tpl=mn&u=http%3A%2F%2Fwww.baidu.com%2F&sms=5" name="tj_login"> could not be scrolled into view 不能跳出对话框
经网上查找是因为不可见元素定位原因,某些情况元素的visibility为hidden或者display属性为none,我们在页面看不到但是实际是存在页面的一些元素,这时候用 is_displayed() 来判断
改过a.py内容
#coding=utf-8
from selenium import webdriver
import time
driver = webdriver.Firefox()
driver.get("http://www.baidu.com/")
#点击登录链接
time.sleep(3)
element0=driver.find_elements_by_name("tj_login")
for ele0 in element0:
    if ele0.is_displayed():
        ele0.click()
#通过二次定位找到用户名输入框
div=driver.find_element_by_class_name("tang-content").find_element_by_name("userName")
div.send_keys("username")
#输入登录密码
driver.find_element_by_name("password").send_keys("password")
#点击登录
driver.find_element_by_id("TANGRAM__PSP_10__submit").click()
driver.quit()
selenium “could not be scrolled into view”的更多相关文章
- sjw-风评评测-定位页面元素
		一.手工标准化操作流程: 1.登录系统 2.登录后的页面点击:账户设置 3.点击“重新评测”,进入到风险评测页面 4.答完8道题 5.勾选条件checkbox 6.点击“提交” 提交后的页面 二.自动 ... 
- <译>Selenium Python Bindings 6 - WebDriver API
		本章涉及Selenium WebDriver的所有接口. Recommended Import Style 推荐的导入风格如下: from selenium import webdriver 然后,你 ... 
- Selenium with Python 009 - WebDriver API
		官方API文档:https://seleniumhq.github.io/selenium/docs/api/py/api.html 更多详情,最好的学习方式可以查阅官方API文档或直接阅读源码,本文 ... 
- Python 3 + Selenium 3 实现汉堡王客户调查提交
		用Python 3 + Selenium 3实现汉堡王客户调查的自动填写,可以用来作为 python selenium的入门学习实现脚本,列举了几个比较不太好弄的知识点. 上代码: from sele ... 
- selenium的方法
		# Licensed to the Software Freedom Conservancy (SFC) under one # or more contributor license agreeme ... 
- Appium python API 总结
		Appium python api 根据testerhome的文章,再补充一些文章里面没有提及的API [TOC] [1]find element driver 的方法 注意:这几个方法只能通过sel ... 
- Appium_Python_Api文档
		1.contextscontexts(self): Returns the contexts within the current session. 返回当前会话中的上下文,使用后可以识别H5页面的控 ... 
- 【转】appium_python_API文档
		1.contextscontexts(self): Returns the contexts within the current session. 返回当前会话中的上下文,使用后可以识别H5页面的控 ... 
- appium python  api收集
		1.contexts contexts(self): Returns the contexts within the current session. 返回当前会话中的上下文,使用后可以识别H5页面的 ... 
随机推荐
- elasticsearch 之编译过程
			https://github.com/elastic/elasticsearch/blob/master/CONTRIBUTING.md 不同的版本需要指定JDK 可以下载openJDK版本到服务器上 ... 
- 短信利用weixin://connectToFreeWifi/?apKey=协议跳转到微信打开落地页h5
			微信门店wifi接口,任意站跳转,跳转二维码长按识别加粉,接口支持动态传参数,支持微信支付等特殊接口对接. 代码如下使用 <head> <meta charset="utf ... 
- .htaccess使用方法介绍
			1..htaccess文件使用前提 .htaccess的主要作用就是实现url改写,也就是当浏览器通过url访问到服务器某个文件夹时,作为主人,我们可以来接待这个url,具体地怎样接待它,就是此文件的 ... 
- Webpack 学习手记
			官网:https://www.webpackjs.com/ 参考网址:https://www.cnblogs.com/cangqinglang/p/8964460.html 1.webpack简述:是 ... 
- Setting NLS_LANG Value for Oracle
			Introduction Many times, when you have an Oracle application and you have to support special charact ... 
- day13 python迭代器与生成器
			迭代器 字符串.列表.元组.字典.集合都可以被for循环,说明他们都是可迭代的 可迭代协议 : 就是内部实现了__iter__方法 可以被for循环的都是可迭代的,要想可迭代,内部必须有一个__ite ... 
- shunting-yard 调度场算法、中缀表达式转逆波兰表达式
			中缀表达式 1*(2+3) 这就是一个中缀表达式,运算符在数字之间,计算机处理前缀表达式和后缀表达式比较容易,但处理中缀表达式却不太容易,因此,我们需要使用shunting-yard Algorith ... 
- tcpdf中增加微软雅黑的正确方式
			找了很多增加字体的方式,不过提供的命令行下增加字体的命令是错误的,下面这个命令是验证过可以用的,不管是win还是linux活着mac都可以. tcpdf对中文的支持就不太好, 当然也可以支持, 比如里 ... 
- Spring Boot 2.x中的management.security.enabled=false无效问题
			look: https://blog.csdn.net/qq_27385301/article/details/82899303 
- 2018-2019-2 20165215《网络对抗技术》Exp5 MSF基础应用
			目录 实验内容 实验原理 实验步骤 (一)一个主动攻击实践 ms08_067(成功) (二)一个针对浏览器的攻击 ms14_064(成功) (三)一个针对客户端的攻击 Adobe(成功) CVE-20 ... 
