Selenium:为什么 css 选择器在 IE10 中失败,但在 firefox 或 chrome 中却没有?

Selenium: Why the css selector fails in IE10 but not in firefox or chrome?

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC


wait = WebDriverWait(webdriver, 10)
elem = self.wait.until(EC.visibility_of_element_located(
            (By.CSS_SELECTOR, '.top_layer.active-element')))

以上代码在 FF 或 Chrome 中完美运行。但是,当我以 IE 为目标时,我收到此错误消息:

 Unable to find element with css selector == .top_layer.active-element (WARNING: The 
 server did not provide any stacktrace information) Command duration or timeout:  
316 milliseconds For documentation on this error, please visit:  
http://seleniumhq.org/exceptions/no_such_element.html Build info: version:  
'2.43.1', revision: '5163bce', time: '2014-09-10 16:27:33' System info: host: 
 '172-16-4-157', ip: '172.16.4.157', os.name: 'windows', os.arch: 'x86',  
os.version: '6.2', java.version: '1.8.0_40' Driver info:  
org.openqa.selenium.ie.InternetExplorerDriver

如何让 css 选择器也适用于 IE10?

尝试禁用ie驱动的nativeEvents。查看 IE 功能的完整列表 here

self.profile = webdriver.DesiredCapabilities.INTERNETEXPLORER
self.profile['nativeEvents'] = False
self.driver = webdriver.Ie(self.profile)