硒元素在已触发区域不可见异常

萨默·科斯特洛·艾哈迈德

我正在尝试在此站点上自动输入条目:https : //gleam.io/jtwmn/3d-printer-giveaway

我成功地点击了“在 Instagram 上访问 @nexi_tech”链接,然后点击蓝色按钮。然后我关闭出现的弹出窗口,并尝试在此处显示的文本框中填写姓名和电子邮件地址 ->我正在尝试访问的文本框

此时我收到错误:selenium.common.exceptions.ElementNotInteractableException:消息:元素不可见

这是我第二次尝试的代码(第一次尝试已注释掉):

# Code running on Python 2.7

from selenium import webdriver
from bs4 import BeautifulSoup
import time
import numpy as np
import pandas as pd

from selenium.common.exceptions import NoSuchElementException

firefox_profile = webdriver.FirefoxProfile()

firefox_profile.add_extension('/Users/samer/Downloads/quickjava-2.0.6-fx.xpi')
firefox_profile.set_preference("thatoneguydotnet.QuickJava.curVersion", "2.0.6.1")  # Prevents loading the 'thank you for installing screen'
firefox_profile.set_preference("thatoneguydotnet.QuickJava.startupStatus.Images", 2)  # Turns images off
firefox_profile.set_preference("thatoneguydotnet.QuickJava.startupStatus.AnimatedImage", 2)  # Turns animated images off

# firefox_profile.set_preference("thatoneguydotnet.QuickJava.startupStatus.CSS", 2)  ## CSS
# firefox_profile.set_preference("thatoneguydotnet.QuickJava.startupStatus.Cookies", 2)  ## Cookies
firefox_profile.set_preference("thatoneguydotnet.QuickJava.startupStatus.Flash", 2)  # Flash
firefox_profile.set_preference("thatoneguydotnet.QuickJava.startupStatus.Java", 2)  # Java
# firefox_profile.set_preference("thatoneguydotnet.QuickJava.startupStatus.JavaScript", 2)  ## JavaScript
firefox_profile.set_preference("thatoneguydotnet.QuickJava.startupStatus.Silverlight", 2)  # Silverlight

# Logging In
driver = webdriver.Firefox(firefox_profile)
driver.get("https://gleam.io/jtwmn/3d-printer-giveaway")
driver.maximize_window()

window_before = driver.window_handles[0]

time.sleep(3)
driver.find_element_by_css_selector("a.no-underline.enter-link.instagram-border.clearfix.grey-bg.default").click()
time.sleep(3)

driver.find_element_by_css_selector("a.btn.btn-info.btn-large.btn-embossed.ng-binding").click()
time.sleep(3)

window_after = driver.window_handles[1]

# Switch Windows
driver.switch_to_window(window_after)

# Close new tab after a bit
driver.close()
time.sleep(2)

driver.switch_to_window(window_before)
time.sleep(3)

#Fill In details

driver.find_element_by_xpath('//*[@id="contestant[name]"]').send_keys("John")

# Previous Test
# username = driver.find_element_by_id("contestant[name]")
# emailaddress = driver.find_element_by_id("contestant[email]")

# username.send_keys("John")
# emailaddress.send_keys("[email protected]")
time.sleep(5)

#Save Details
driver.find_element_by_css_selector("button.btn.btn-primary.ng-scope").click()
time.sleep(5)

print "Save Complete"
driver.quit()
print "Script Ended"

安德森

如果你试试

len(driver.find_elements_by_xpath('//input[@id="contestant[name]"]'))

你会看到它回来了4所以有3个不可见,只有一个可见input您可以尝试使用 index 来处理适当的元素:

driver.find_elements_by_xpath('//input[@id="contestant[name]"]')[3].send_keys("John")

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

硒元素不可见异常

来自分类Dev

硒下拉列表中的元素不可见异常

来自分类Dev

元素不可见,硒

来自分类Dev

硒元素不可见

来自分类Dev

无法单击硒中的列表按钮选项:异常元素不可见

来自分类Dev

使用硒,可以得到不可见元素的文本吗?

来自分类Dev

尽管硒不可见,如何忽略元素单击

来自分类Dev

$ watch事件未在最初不可见的元素上触发

来自分类Dev

Java Webdriver:元素不可见异常

来自分类Dev

Selenium Webdriver:元素不可见异常

来自分类Dev

Selenium Python滑块bouton元素不可见异常

来自分类Dev

Selenium FluentWait 和元素不可见异常

来自分类Dev

硒可见元素无法识别为可见元素

来自分类Dev

元素不可见

来自分类Dev

在python中使用硒,如何克服“消息:元素当前不可见”的问题?

来自分类Dev

硒:通过可见文本查找元素

来自分类Dev

硒:通过可见文本查找元素

来自分类Dev

按钮不可见但已启用

来自分类Dev

链接已连接但不可见

来自分类Dev

链接已连接但不可见

来自分类Dev

文件已创建,但不可见

来自分类Dev

已安装Ubuntu,分区不可见

来自分类Dev

Chrw()异常:不可见的值

来自分类Dev

当“覆盖” div无效时,如何阻止不可见元素被触发

来自分类Dev

元素不可见异常-即使使用了不同的Selenium等待

来自分类Dev

Selenium Web驱动程序Ruby-元素不可见异常

来自分类Dev

无法单击选项卡的子值,Selenium中出现“元素不可见”异常

来自分类Dev

Java-Selenium(chrome驱动程序)元素不可见异常

来自分类Dev

上传图片-元素当前不可见