Selenium学习笔记||二、选择操作Web元素

一、 Selenium自动化主要就是

  1. 选择界面元素

  2. 操作界面元素

    输入:点击、输入、拖拽

    输出:获取元素的各种属性

  3. 根据界面上获取的数据进行分析和处理

二、 选择元素

  1. WebDriver:操作整个浏览器的当前整个页面

    A. 当前页面上选择符合查找条件的对象

    B. 打开网址、回退、前进、刷新页面

    C. 获取、改变浏览器窗口大小,关闭浏览器,截屏

    D. 获取、设置cookies

  2. WebElement:操作和对应Web元素

    A. 当前web元素的所有子元素里边符合查找条件的元素

    B. 操作该web元素,如:点击元素、输入字符、获取元素坐标、尺寸、文本内容、其他的属性信息。 

三、 通过ID选择元素(效率最高)

  写法1:

element = driver.find_elements_by_id("  ")   

  写法2:

from selenium.webdriver.common.by import By

driver.find_element(by = By.ID, value = "  ")

四、已知异常可以放在try catch 中

try:
    ele = driver.find_element_by_id("   ")
except NoSuchElementException:
    print('NoSuchElementException')

五、获取元素信息

  1. text属性:显示该元素在web页面显示出来的文本内容

  2. get_attribute方法

    A. 某个属性的值: ele.get_attribute('href')

from selenium import webdriver
driver = webdriver.Chrome(r"D:webdriverchromedriver_73.0.3683.68.exe")

driver.get("http://www.baidu.com")#1.打开百度网页
ele = driver.find_element_by_id("quickdelete")#2.查找元素id是quickdelete的元素
print(ele.get_attribute("href"))#3. 获取href属性的值

    B. 某元素对应html源代码: ele.get_attribute('outerHTML')

from selenium import webdriver
driver = webdriver.Chrome(r"D:webdriverchromedriver_73.0.3683.68.exe")

ele = driver.find_element_by_id("u1")
print(ele.get_attribute('outerHTML'))

driver.quit()

    C. 某元素的内部部分的html源代码: ele_attribute('innerhtml')

from selenium import webdriver
driver = webdriver.Chrome(r"D:webdriverchromedriver_73.0.3683.68.exe")

ele = driver.find_element_by_id("u1")
print(ele.get_attribute('innerHTML'))

driver.quit()

 

P.S.

每次代码最后一行不加上driver.quit(),chromedriver的进程就一直都在,关闭浏览器也没有用

原文地址:https://www.cnblogs.com/Lixinhang/p/10840544.html