selenium学习笔记

本文是关于Selenium的详细学习笔记,涵盖了安装、基本操作,如选择元素(id、class、标签等)、操作元素(点击、获取内容、输入等),CSS选择器,frame和窗口切换,下拉框选择,ActionChains,以及JavaScript执行、Cookie管理、等待策略、代理设置和User-Agent替换等高级技巧。
摘要由CSDN通过智能技术生成

selenium

一 安装与准备

1 pip install selenium

2 安装浏览器,下载浏览器对应的驱动

https://registry.npmmirror.com/binary.html?path=chromedriver

3 相关资料:

http://www.python3.vip/tut/auto/selenium/01/

https://www.bilibili.com/video/BV1Z4411o7TA?p=4

二 基本操作

1 浏览器
from selenium import webdriver

# 创建 WebDriver 对象,指明使用chrome浏览器驱动位置
wd = webdriver.Chrome(r'd:\webdrivers\chromedriver.exe')   # 启动浏览器驱动与浏览器

# 设置寻找元素的最大等待时间,最大时间内周期性(每隔半秒钟)寻找该元素
wd.implicitly_wait(10)

# 调用WebDriver 对象的get方法 可以让浏览器打开指定网址
wd.get('https://www.baidu.com')

# 浏览器当前页面的源代码(一个或多个请求返回结果共同渲染后的前端源码)
wd.page_source

# 浏览器当前页面的标题
wd.title

# 当前页面url
wd.current_url

# 设置浏览器位置相较于屏幕左上角的位置
wd.set_window_position(300, 200)

# 页面刷新,模拟浏览器F5刷新
wd.refresh()

# 退出,释放资源
wd.quit()

无界面浏览器

from selenium import webdriver
opt = webdriver.ChromeOptions()            # 创建Chrome参数配置对象

# 把Chrome设置成可视化无界面模式,windows/Linux 皆可
# opt.headless = True   或者采用下面方式 
opt.add_argument('--headless')   # 无界面
opt.add_argument('--disable-gpu')   # 禁用gpu

driver = webdriver.Chrome(executable_path=r'd:\chromedriver.exe', options=opt)     # 创建Chrome无界面对象
2 选择元素的基本方法
1) 根据元素id属性选择元素
# 返回 WebElement 对象
element = wd.find_element_by_id('kw')   # 获取元素
# element.send_keys("python\n")   # 在元素中输入python回车,回车搜索
2) 根据元素的class属性获取元素
# 获取class名为animal的所有元素,返回一个列表
wd.find_elements_by_class_name('animal')   # 列表,不存在[]
# 获取第一个class名为animal的元素
wd.find_element_by_class_name('animal')   # 对象,不存在异常

例子

from selenium import webdriver

# 创建 WebDriver 实例对象,指明使用chrome浏览器驱动
wd = webdriver.Chrome(r'd:\webdrivers\chromedriver.exe')

# WebDriver 实例对象的get方法 可以让浏览器打开指定网址
wd.get('http://cdn1.python3.vip/files/selenium/sample1.html')

# 根据 class name 选择元素,返回的是 一个列表
# 里面 都是class 属性值为 animal的元素对应的 WebElement对象
elements = wd.find_elements_by_class_name('animal')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值