在IE中无法通过id找到元素

时间:2016-05-31 17:48:57

标签: python selenium web-scraping

我试图用Selenium做一些刮擦。以下代码在Firefox驱动程序中运行良好,但在IE驱动程序中运行不正常。

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait

username = 'test@example.com'

browser = webdriver.Ie()
browser.wait = WebDriverWait(browser, 10)

loginpage = 'http://www.facebook.com'
browser.get(loginpage)

browser.find_element_by_id('email').clear()
browser.find_element_by_id('email').send_keys(username)

一些信息:

  • 运行最新版本的Selenium。 Windows 10上的IE 11,64位。
  • 尝试了http://www.seleniumhq.org/download/
  • 的36位和64位驱动程序版本
  • 建议更改注册表。
  • 产生的具体错误是NoSuchElementException: Unable to find element with id == email
  • 尝试将等待设置为60,仍然会产生相同的错误
  • 尝试了"兼容性视图"技巧(工具>兼容性视图设置,添加网站)从另一个线程无济于事
  • 已禁用增强保护模式

感谢您的帮助

1 个答案:

答案 0 :(得分:-1)

您可以尝试使用

browser.execute_script("document.getElementById('email').value='test@test.com'")