【Python_Selenium学习笔记(一)】Selenium介绍及基本使用方法

这篇具有很好参考价值的文章主要介绍了【Python_Selenium学习笔记(一)】Selenium介绍及基本使用方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

Selenium是一套 Web 网站的程序自动化操作解决方案,广泛应用于自动化测试及爬虫。此篇文章主要介绍 Selenium 的 安装和基本使用流程。

正文

1、Selenium 安装与导入

Selenium 框架的安装主要就是安装两样东西: Selenium 客户端库 和 浏览器驱动 。

1.1、Selenium 框架安装

使用 pip 命令安装 pip install selenium,安装完后直接导入 import selenium 即可。

1.2、浏览器驱动安装

浏览器驱动 是和 浏览器对应的, 不同的浏览器 需要选择不同的浏览器驱动。
Chrome 浏览器 的 WebDriver,可以在该地址下载:http://npm.taobao.org/mirrors/chromedriver/
Firefox 浏览器的 WebDriver,可以在该地址下载:https://github.com/mozilla/geckodriver/releases
注意:浏览器驱动 必须要和浏览器版本匹配

2、Selenium 自动化流程

  1. 自动化程序调用Selenium 客户端库函数(比如点击按钮元素)
  2. 客户端库会发送Selenium 命令 给浏览器的驱动程序
  3. 浏览器驱动程序接收到命令后 ,驱动浏览器去执行命令
  4. 浏览器执行命令
  5. 浏览器驱动程序获取命令执行的结果,返回给我们自动化程序
  6. 自动化程序对返回结果进行处理
    转载至:白月黑羽

3、Selenium 常用方法

3.1、浏览器对象常用方法及属性

  1. browser.get():地址栏输入url地址并确认
  2. browser.quit():关闭浏览器
  3. browser.close():关闭当前页,浏览器不关闭
  4. browser.maximize_window():浏览器窗口最大化
  5. browser.page_source:HTML结构源码
  6. browser.page_source.find(“字符串”):从源码中查找指定字符串,没有返回-1,常用于判断最后一页

3.3、节点对象常用方法

  1. node.send_keys():向文本框发送内容
  2. node.click():点击
  3. node.clear():清空文本
  4. node.get_attribute(‘属性名’):获取节点属性值
  5. node.text():获取节点文本内容(包含子节点和后代节点)

4、Selenium 使用示例

4.1、示例目标

  1. 打开浏览器,并使浏览器最大化,输入百度的url地址
  2. 找到搜索框节点,输入搜索关键字:python
  3. 找到百度一下的按钮,进行点击
  4. 打印HTML结构源码,并寻找是否存在"kw"节点
  5. 保存页面图片

4.2、示例源码

import time
from selenium import webdriver  # 需要导入selenium的webdriver接口
from selenium.webdriver.common.by import By

browser = webdriver.Chrome()  # 创建浏览器webdriver对象
browser.maximize_window()  # 浏览器窗口最大化
browser.get(url="http://baidu.com")  # 输入百度的url地址
inputBaidu = browser.find_element(By.XPATH, '//*[@id="kw"]')  # 找到搜索框的节点位置,并发送搜索的关键字
# '//*[@id="kw"]':复制出来的xpath表达式 是页面最终渲染完之后,以前端页面为主写的xpath表达式,与响应内容无关
inputBaidu.send_keys("python")
browser.find_element(By.XPATH, '//*[@id="su"]').click()  # 找到百度一下的节点位置,并点击
time.sleep(1)
html = browser.page_source  # HTML结构源码
print(html)
print(browser.page_source.find("kw"))  # 从源码中查找指定字符串,没有返回-1,常用于判断最后一页
browser.save_screenshot("baidu.png")  # 截图保存
time.sleep(1)

注意:把 浏览器驱动 放在 py 文件 所在路径下,在创建浏览器对象时就无需指定浏览器驱动路径了
Xpath表达式 获取方法:
【Python_Selenium学习笔记(一)】Selenium介绍及基本使用方法

4.3、示例效果

【Python_Selenium学习笔记(一)】Selenium介绍及基本使用方法文章来源地址https://www.toymoban.com/news/detail-412518.html

到了这里,关于【Python_Selenium学习笔记(一)】Selenium介绍及基本使用方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 自动化测试工具 —— selenium介绍及基本使用方法

    Selenium是一个开源、免费、简单、灵活,对Web浏览器支持良好的自动化测试工具,在UI自动化、爬虫等场景下是十分实用的,能够熟练掌握并使用Selenium工具可以大大的提高效率。 Selenium简介 Selenium支持多平台、多浏览器、多语言去实现自动化测试,是一个开源和可移植的Web测

    2024年02月05日
    浏览(44)
  • Python Selenium 的基本使用方法

    Selenium 是一个用于自动化 web 浏览器的工具,它提供了一套用于测试 web 应用程序的工具和库。Selenium 最初是用于测试 web 应用程序的,但它也被广泛用于进行网络数据采集、自动化任务和网页操作等。 Selenium 支持多种编程语言,包括 Python、Java、JavaScript、C# 等,但最为常用的

    2024年04月28日
    浏览(28)
  • Python_Selenium自动化测试详细教程

       Python Selenium是Selenium WebDriver的Python语言封装,为Python开发者提供了一个方便易用的自动化测试库。它支持多种浏览器(如Chrome、Firefox、Edge等)以及多个操作系统,可以模拟用户在浏览器中的各种行为,包括打开网页、查找元素、输入文本、点击链接、提交表单、上传文

    2024年02月11日
    浏览(29)
  • Python_selenium: 元素定位不到的罪魁祸首之一:iframe

    背景:组内同事最近在写脚本,使用复制的xpath始终定位不到元素,报错内容:selenium.common.exceptions.NoSuchElementException: Message: Unable to locate element: {\\\"method\\\":\\\"xpath\\\",\\\"selector\\\":\\\"//table[text()=\\\'contentTable\\\']/tbody/tr/td[16]/a[2]/i\\\"} 解题思路: 1. 由于提供的html截图信息,发现存在多层body消息体拼

    2024年02月04日
    浏览(37)
  • python中的cnn:介绍和基本使用方法

    python中的cnn:介绍和基本使用方法 卷积神经网络(Convolutional Neural Networks,简称CNN)是一种在图像识别、语音识别、自然语言处理等许多领域取得显著成功的深度学习模型。CNN的设计灵感来源于生物的视觉系统,由多个卷积层、池化层和全连接层组成。 在Python中,我们通常使

    2024年02月12日
    浏览(29)
  • python中的svm:介绍和基本使用方法

    python中的svm:介绍和基本使用方法 支持向量机(Support Vector Machine,简称SVM)是一种常用的分类算法,可以用于解决分类和回归问题。SVM通过构建一个超平面,将不同类别的数据分隔开,使得正负样本之间的间隔(也称为边缘)最大化。 在Python中,可以使用scikit-learn库来使用

    2024年02月12日
    浏览(34)
  • python中的lstm:介绍和基本使用方法

    python中的lstm:介绍和基本使用方法 未使用插件 LSTM(Long Short-Term Memory)是一种循环神经网络(RNN)的变体,专门用于处理序列数据。LSTM 可以记忆序列中的长期依赖关系,这使得它非常适合于各种自然语言处理(NLP)和时间序列预测任务。 在 Python 中,你可以使用深度学习框

    2024年02月12日
    浏览(31)
  • chatgpt赋能python:python中的iloc:介绍和基本使用方法

    在Python中,Dataframe是数据分析中最常用的数据结构。iloc是Python Pandas库中用于简化数据切片和子集操作的一种方法。 本文将介绍iloc的基础概念和基本使用方法,并且通过实际的示例来演示如何使用iloc来快速选择和操作数据集。 iloc是“integer location”的缩写,意为“整数位置

    2024年02月04日
    浏览(35)
  • Python中os.environ基本介绍及使用方法

    os.environ简介 os.environ 是Python中的一个字典对象,它包含了当前进程的环境变量。通过使用 os.environ ,可以获取和设置环境变量的值。 下面是给给定的Python代码添加注释说明的示例 在上述代码中,我们首先导入了 os 模块,然后使用 os.environ.get() 方法获取名为 PATH 的环境变量的

    2024年04月12日
    浏览(28)
  • String类的学习笔记(上):介绍String类及其常用方法的使用

    本文介绍了Java中用来描述操作字符串的String类,和其一些常用的基本操作方法,字符串的创建输出,字符串对象的比较,字符串查找,字符串的转化,字符串的替换,字符串拆分,字符串截取,和大小写转换,去除左右空格,子字符串包含,学会使用这些方法,能更方便的使用操作字符串~ 前言

    2023年04月23日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包