Selenium 库

Selenium两大对象

WebDriver对象

  • 页面跳转
  • 截图
  • 获取源码
  • 执行js
  • 最大化窗口
  • 切换窗口

WebElement对象

  • 输入
  • 点击
  • 获取内容
  • 获取属性
  • 改变样式

鼠标和键盘操作

鼠标

  • 左键单击
  • 右键单击
  • 左键双击
  • 右键双击
  • 中键单击、双击
  • 滚动
  • 长按
  • 拖动

按键:

  • ASCII
  • 功能键
  • 编辑键
  • 快捷键

快速上手

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

# 获取浏览器驱动(打开浏览器)
driver = Edge()

# 访问网页
driver.get('https://baidu.com')

# 窗口最大化
driver.maximize_window()

# 获取网页标题
print(driver.title)

# 获取网页url
print(driver.current_url)

# 获取网页截图
driver.get_screenshot_as_file('page.png')  # 获取当前画面

# 获取网页源码
with open("page.html", 'w', encoding='utf-8') as f:
    f.write(driver.page_source)
    
# 等待,直到函数返回True(最多等待30s)
WebDriverWait(driver, timeout=30).until(lambda x: driver.find_element('xpath', '//*[@id="kw"]'))

# 获取元素
input_element = driver.find_element(by=By.XPATH, value='//*[@id="kw"]')
button_element = driver.find_element(by=By.XPATH, value='//*[@id="su"]')

# 操作元素
input_element.send_keys('github')  # 给元素发送文字
button_element.click()  # 点击元素
button_element.screenshot('btn.png')  # 获取元素的截图
print(button_element.text)  # 获取元素的文本
print(button_element.rect)  # 获取元素位置和大小


# 让程序暂停(阻塞)
input()

# 停止驱动并关闭浏览器
driver.quit()

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值