【Web自动化】Python Selenium基础知识

1. selenium安装

  • 安装selenium
pip install selenium==4.2 -i https://mirrors.aliyun.com/pypi/simple/
  • 准备ChromeDriver
    • ChromeDriver下载
    • 下载后解压,将 chromedriver.exe 放在 python 的安装目录下

2.selenium原理

按照W3C的接口协议标准,通过ChromeDriver提供的API,打开谷歌浏览器模拟用户真实操作。

3.初始化

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()
driver.get(url)

4. 8种元素定位方式

4.1.作用于属性元素:ID / NAME / CLASS_NAME

  • ID
driver.find_element(By.ID,value)
  • NAME
driver.find_element(By.NAME,value)
  • CLASS_NAME
driver.find_element(By.CLASS_NAME,value)
  • 示例:某登录场景
# 定位用户名输入框,输入用户名:user_test
driver.find_element(By.ID,"username").send_keys("user_test")

# 定位密码输入框,输入密码:123456
driver.find_element(By.NAME,"password").send_keys("123456")

# 定位登录按钮
driver.find_element(By.CLASS_NAME,"btnLogin").click()

4.2.作用于标签元素:LINK_TEXT / PARTIAL_LINK_TEXT / TAG_NAME

  • LINK_TEXT
    作用域:作用于 a 标签中间的文本
    使用:精确匹配,必须完整的字符
    应用:

    driver.find_element(By.LINK_TEXT,value)
    # 示例
    # driver.find_element(By.LINK_TEXT,"返回首页").click()
    
  • PARTIAL_LINK_TEXT
    作用域:作用于 a 标签中间的文本
    使用:靠左匹配,可输入首个字符
    应用:

    driver.find_element(By.PARTIAL_LINK_TEXT,value)
    # 示例
    # driver.find_element(By.PARTIAL_LINK_TEXT,"返回").click()
    
  • TAG_NAME
    作用域:作用于全局唯一标签的标签名

    driver.find_element(By.TAG_NAME,value)
    # 示例
    # driver.find_element(By.TAG_NAME,"button").click()
    

4.3.作用于CSS路径的元素

  • 找id,# 代表ID
    • 用法一:标签名 + id属性
    driver.find_element(By.CSS_SELECTOR,"input[id='searchKey']")
    
    • 用法二:标签名 + #value
    driver.find_element(By.CSS_SELECTOR,"input#searchKey")
    
    • 用法三:#value
    driver.find_element(By.CSS_SELECTOR,"#searchKey")
    
  • 找class,. 代表class
    • 用法一:标签名 + class属性
    driver.find_element(By.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值