在手动与网站交互时使用Selenium python

时间:2014-07-25 00:07:38

标签: python internet-explorer python-2.7 selenium selenium-webdriver

更新: 我创建了一个自定义配置文件,IE兼容模式作为默认设置并获得相同的错误消息,所以看起来像是一些关于Fire IE使得webdriver不知道如何运行代码。

我正在使用Solenium更新内部网站上的表单。该网站仅支持Internet Explorer。出于某种原因,IE webdriver send_keys非常慢,所以我已经开始使用Firefox并登录网站。通过询问用户输入来暂停我的代码。在此期间,我使用Fire IE将Firefox浏览器转换为IE。然后我输入代码并尝试填写用户表单,但之后它给了我一个编译器错误。

我的代码:     来自selenium import webdriver     来自selenium.webdriver.common.keys导入密钥

#ask for credentials
email = raw_input("Username: ") #ask for username
pw = raw_input("Password: ") #ask for password

#new profile
driver = webdriver.FirefoxProfile()
driver.add_extension(extension='C:\\Users\\someuser\\Desktop\\Python-Firefox Profile\\iefireieie-0.3.9-fx-windows.xpi')


driver.set_preference("extensions.iefireieie-0.3.9-fx-windows.xpi", "0.3.9")
browser = webdriver.Firefox(firefox_profile=driver)

URL = 'https://example.net'


browser.get(URL)

#fill in username
username = browser.find_element_by_id('loginForm:name')
username.send_keys(email)

#fill in password
password = browser.find_element_by_id('loginForm:password')
password.send_keys(pw)

#click the login button
loginbutton = browser.find_element_by_id('loginForm:name')
loginbutton.send_keys(Keys.ENTER)


continue_with_Compatability = raw_input("Click the convert to IE tab then type any key and press enter: ")


#add first name to form box
firstname = browser.find_element_by_id('UserForm:firstName')
firstname.send_keys('Bob')

我收到此错误消息。关于切换到IE标签的东西就是搞砸了。如果我不换,它就有效。我不需要切换这个特定的字段,但我会为表单的其他部分切换。

selenium.common.exceptions.NoSuchElementException: Message: u'Unable to locate element: {"method":"id","selector":"loginForm:name"}' ; Stacktrace: 

0 个答案:

没有答案