今天是学习selenium的第三天,今天的主题是自动登录126邮箱。
今天总结碰到的坑有三个:
1、frame内元素抓取,使用driver.switch_to.frame(frameId)方法切换锁定frame
2、等待页面渲染完毕定位输入,chrome下使用sleep(秒)等待
3、 driver的element内置方法会有失灵情况,采用driver.execute_script(js字符串)方法执行
初始代码,代码中的username\password替换成自己的账户密码即可
1 from selenium import webdriver 2 3 #自动打开邮箱主页登录 4 driver = webdriver.Firefox() 5 #driver = webdriver.Chrome() 6 #driver = webdriver.Ie() 7 dr.get("http://mail.126.com") 8 idInput = dr.find_element_by_xpath('//input[@name="email"]') 9 pwdInput = dr.find_element_by_xpath('//input[@name="password"]') 10 idInput.clear() 11 idInput.send_keys("username") 12 pwdInput.clear() 13 pwdInput.send_keys("password") 14 15 dr.find_element_by_id('dologin').click() 16 17 dr.quit()