1. 下载chromedriver(使用谷歌浏览器,注意浏览器和驱动版本号)
  2. 将chromedriver复制到python目录
import time
# 导入selenium
from selenium import webdriver
# 实例化浏览器驱动对象(创建浏览器驱动对象)
driver = webdriver.Chrome()  # 创建的是谷歌浏览器驱动对象   chrome后面有括号,而且第一个字母要大写
# driver = webdriver.Firefox() # 创建火狐浏览器驱动对象
# 打开百度网站
driver.get("http://www.baidu.com")
# 等待3s(代表业务操作)
time.sleep(3)     # 通过快捷导包的方式导入time模块,  光标要在time后面再按alt+enter
# 退出浏览器驱动(释放系统资源)
driver.quit()

4. 运行打开百度

=========================================================================

定位页面元素方式

1.根据id


driver.find_element_by_id("userA").send_keys("admin") driver.find_element_by_id("passwordA").send_keys("123456")


2.根据classname


driver.find_element_by_class_name("telA").send_keys("17852222222") driver.find_element_by_class_name("emailA").send_keys("33322@163.com")


3.根据name


driver.find_element_by_name("userA").send_keys("admin") driver.find_element_by_name("passwordA").send_keys("123456")


4.根据文本


driver.find_element_by_link_text("新浪").click() # 主要是定位a标签 driver.find_element_by_partial_link_text("新浪").click() # 通过超链接的局部文本信息进行元素定位,主要是定位a标签


5.根据标签名,返回多个,用下标取具元素


elements = driver.find_elements_by_tag_name("input")


6.根据XPATH


driver.find_element_by_xpath("//p[@id='pa']/input").send_keys("admin1")


driver.find_element_by_xpath("//p[2]/input").send_keys("123456")


"//p[2]/input"表示第二个p标签下的input标签

7.根据cssselector


driver.find_element(By.CSS_SELECTOR, "[placeholder='请输入用户名']")


driver.find_element_by_css_selector(".telA").clear()


# .表示通过元素的class属性进行元素选择, class表示的class属性的其中一个属性值

=========================================================================

元素操作

  • 点击操作 element.click() element表示的是元素对象
  • 输入操作 element.send_keys("value") element表示的是元素对象, value表示的是要输入的内容
  • 清除操作 element.clear() element表示的是元素对象. 将输入框里面的内容全部清除。

浏览器操作

  1. maximize_window() 最大化浏览器窗口 --> 模拟浏览器最大化按钮
  2. set_window_size(width, height) 设置浏览器窗口大小 --> 设置浏览器宽、高(像素点)
  3. set_window_position(x, y) 设置浏览器窗口位置 --> 设置浏览器位置
    x,y是一个坐标点,通过此坐标点确定浏览器最左上角的位置,以此确定浏览器在屏幕上的位置。
    x, y不能超过屏幕的分辨率大小

获取元素信息

  • size 获取元素的大小 返回的是一个字典,里面包含 元素高度和宽度的值
  • text 获取元素的文本内容
  • get_attribute("attribute") 获取元素对应属性名称的属性值 , attribute表示的是属性名
  • is_displayed() 判断元素是否可见 返回值为true或者false
  • is_enabled() 判断元素是否可用,返回值为true或者false
  • is_selected() 判断复选框或者单选框是否被选中,返回值为true或者false