欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

深入selenium模块基础操作

程序员文章站 2022-06-22 11:00:13
selenium模块的基本操作 一.模拟浏览器 ​ 谷歌、Firefox、Safari等浏览器 browser=webdriver.Chrome() browser=webdriver.Firefox() browser=webdriver.Safari() browser=webdriver.Ed ......

selenium模块的基本操作

一.模拟浏览器

​ 谷歌、firefox、safari等浏览器

  • browser=webdriver.chrome()
  • browser=webdriver.firefox()
  • browser=webdriver.safari()
  • browser=webdriver.edge()
  • browser=webdriver.phantomjs()

二.访问

上面模拟后的浏览器

browser.get('url')

三.定位网页元素

定位元素的方法:

  • driver.find_element_by_xxx(value)

  • from selenium.webdriver.common.by import by driver.find_element(by.id, value)

一、元素定位:用于完成元素定位的定位方式:一定要使用变量接收定位到的元素

​ a = driver.find_element_by_xxx()

  • 1 通过id属性进行定位:driver.find_element_by_id(id)

  • 2 通过name属性进行定位:driver.find_element_by_name(name)

  • 3 通过class属性进行定位:driver.find_element_by_class_name(class_name)

  • 4 通过标签名进行定位:driver.find_element_by_tag_name(value)

    使用条件:
    • 1 要定位的标签是该页面唯一该类标签

    • 2 要定位的标签是该类标签的第一个

  • 5 通过a标签文本信息定位(完整的文本):driver.find_element_by_link_text()

  • 6 通过a标签文本信息定位(部分文本)driver.find_element_by_partial_link_text()

  • 7 通过css规则进行定位:driver.find_element_by_css_selector()

  • 8 通过xpath定位:driver.find_element_by_xpath()

四.元素的操作

  • 元素名称.send_keys(value) 输入内容

  • 元素名称.clear() 清空用于有些输入的地方有默认值

  • 元素名称.click() 点击 主要用于按钮元素

  • 元素名称.submit() 提交

  • 按回车提交

    from selenium import webdriver
    from selenium.webdriver.common.keys import keys
    browser = webdriver.chrome()
    browser.get('https://www.baidu.com')
    input = browser.find_element_by_id('kw')
    input.send_keys('ywy')
    input.send_keys(keys.enter)

五.传回元素内容

  • 元素名称.text: 获取文本
  • 元素名称.get_attribute(attribute):获取元素内属性attribute为标签属性
  • 元素名称.id :获取元素标签
  • 元素名称.location:获取元素名称
  • 元素名称.tag_name:获取元素标签名称
  • 元素名称.size:获取元素大小

六.浏览器的前进后退

  • 后退:browser.black()
  • 前进:browser.forward()

七.关闭

  • 关闭当前:browser.close()
  • 关闭所有:browser.quit()

八.简单的模拟百度搜索

from selenium import webdriver
from selenium.webdriver.common.keys import keys
browser = webdriver.chrome()
browser.get('https://www.baidu.com')
input_data = browser.find_element_by_id('kw')
input_data.clear()
input_data.send_keys('ywy')
#input.send_keys(keys.enter) 回车登入
enter = browser.find_element_by_id('su')
enter.click()

后续再补充其他的