零、前言
selenium使用过程比较简单,完整代码在最后
一、安装selenium
参考:http://www.testclass.net/selenium_python/install-selenium
二、浏览器驱动
参考:http://www.testclass.net/selenium_python/selenium3-browser-driver
三、开始编码
from selenium import webdriver
import path
import time
# 因为我的电脑不能设置环境变量,所以配置临时环境变量,你已配置好,请忽略下面两行
# path_str = path.addPath("D:\Selenium\driver;.")
# path.setTempPath("path", path_str)
driver = webdriver.Chrome()
driver.get("http://www.126.com")
到这里你的代码已经能调用浏览器打开126首页了对吗
四、定位登录框
由于登录框是一个iframe且id不固定,所以我们用下面的两行定位登录框
# 寻找页面中div含有iframe的元素命名为fuuz
fuuz = driver.find_element_by_xpath("//div/iframe")
# fuuz.get_attribute('id')获取fuuz的id
# driver.switch_to.frame去锁定动态id的iframe
driver.switch_to.frame(fuuz.get_attribute('id'))
五、输入账号密码
找到账号密码框,清空后,输入账密
driver.find_element_by_name("email").clear()
# time.sleep(3),每个操作间隔三秒,这样是为了让你看清楚
time.sleep(3)
# xxxx@126.com为你的账号
driver.find_element_by_name("email").send_keys("xxxx@126.com")
time.sleep(3)
driver.find_element_by_name("password").clear()
time.sleep(3)
# xxxx为你的密码
driver.find_element_by_name("password").send_keys("xxxx")
time.sleep(3)
正常的话,会如下图
六、点击登录,正常的话就可以登陆成功了
driver.find_element_by_id("dologin").click()
time.sleep(3)
driver.switch_to.default_content()
time.sleep(3)
正常如下图
七、登录成功,关闭浏览器
driver.quit()
八、完整代码如下
from selenium import webdriver
import path
import time
# 因为我的电脑不能设置环境变量,所以配置临时环境变量,你已配置好,请忽略下面两行
# path_str = path.addPath("D:\Selenium\driver;.")
# path.setTempPath("path", path_str)
driver = webdriver.Chrome()
driver.get("http://www.126.com")
# 寻找页面中div含有iframe的元素命名为fuuz
fuuz = driver.find_element_by_xpath("//div/iframe")
# fuuz.get_attribute('id')获取fuuz的id
# driver.switch_to.frame去锁定动态id的iframe
driver.switch_to.frame(fuuz.get_attribute('id'))
driver.find_element_by_name("email").clear()
# time.sleep(3),每个操作间隔三秒,这样是为了让你看清楚
time.sleep(3)
# xxxx@126.com为你的账号
driver.find_element_by_name("email").send_keys("xxxx@126.com")
time.sleep(3)
driver.find_element_by_name("password").clear()
time.sleep(3)
# xxxx为你的密码
driver.find_element_by_name("password").send_keys("xxxx")
time.sleep(3)
driver.find_element_by_id("dologin").click()
time.sleep(3)
driver.switch_to.default_content()
time.sleep(3)
driver.quit()