草庐IT

pytest-selenium

全部标签

[爬虫]2.2.1 使用Selenium库模拟浏览器操作

Selenium是一个非常强大的工具,用于自动化Web浏览器的操作。它可以模拟真实用户的行为,如点击按钮,填写表单,滚动页面等。由于Selenium可以直接与浏览器交互,所以它可以处理那些需要JavaScript运行的动态网页。安装Selenium首先,我们需要安装Selenium库。你可以使用pip命令来安装:pipinstallselenium然后,你需要下载一个WebDriver。WebDriver是一个特殊的浏览器驱动程序,Selenium通过它来控制浏览器。对于不同的浏览器,有不同的WebDriver。最常用的WebDriver包括ChromeDriver(用于GoogleChrom

【java爬虫】使用selenium获取某宝联盟淘口令

上一篇文章我们已经介绍过使用selenium获取优惠券基本信息的方法(15条消息)【java爬虫】使用selenium爬取优惠券_haohulala的博客-CSDN博客本文将在上一篇文章的基础上更进一步,获取每个优惠券的淘口令,毕竟我们只有复制淘口令才能在APP里面获取优惠券嘛获取淘口令的方法也是非常简单,对于首页的每一张优惠券卡片,都需要点击进入详细信息页面,然后获取淘口令程序运行起来后的效果如下图所示先来看一下我们要收集的信息@Data@AllArgsConstructor@NoArgsConstructorpublicclassGoodItem{//优惠券标题privateStringt

selenium无头模式(--headless)怎么添加使用?

有一些兄弟姐妹执行selenium的UI测试用例的时候,都会出现每次执行一条测试用例都会打开一个浏览器吧?是不是有时候觉得很麻烦、不美观、占内存?那我们应该怎么来解决这个问题呢?那就要用到selenium里面的一个无头模式,具体如何使用,请往下看~~第一步:引入无头模式的包:fromselenium.webdriver.chrome.optionsimportOptions(这个需要前提引入的,就想时间等待一样)第二步:不管是谷歌/火狐浏览器,需要在初始页面添加这段代码(参数):#第一步输入这个:去除开头警告warnings.simplefilter('ignore',ResourceWarn

Selenium教程__按钮的点击、文本框的输入和清除操作(3)

fromseleniumimportwebdriverdriver=webdriver.Chrome()driver.maximize_window()driver.get("https://www.baidu.com")#定位元素input_box=driver.find_element_by_id("kw")search_btn=driver.find_element_by_id("su")#sen_keys:文本框输入内容操作input_box.send_keys("selenium")#click:按钮点击操作search_btn.click()#clear:文本框清除内容操作inpu

【java爬虫】selenium+browsermob入门实战

在爬虫领域,selenium几乎是最无所不能的一个框架了,在传统的爬虫无能为力的时候,我们可以使用selenium来请求动态页面获取信息。当然,只有selenium还是不够的,因为使用selenium我们只能获取页面上展示的数据,但是无法获取Network请求和响应结果,有些网页并不会将从接口接收到的所有数据都展示到页面上,为了捕捉到这些信息,我们就需要引入到browsermob。这两个框架的强强联合,几乎可以解决我们99%的需求。使用selenium接管已开启的浏览器一般情况下使用selenium都是重新开一个浏览器,但是这样会产生一些问题,比如有一些网站你需要登录后才能查询到信息,如果每次

Pytest教程:Pytest的简介

Pytest是一个基于Python编写的全功能测试框架,它被广泛应用于软件开发领域的自动化测试。在本篇技术博客中,我们将介绍Pytest的简介、背景和优势,以及它相比其他测试框架的优势、主要特点和功能。一、Pytest的简介、背景和优势Pytest是一个轻量级的测试框架,它提供了更简单、更可读、更灵活的方式来编写测试用例,同时还能够管理测试过程、生成报告、支持fixture和插件等功能。Pytest最初由HolgerKrekel于2004年创建,旨在为Python项目提供简单易用的测试框架。Pytest的设计思想是让测试代码更加简洁、易读,并支持多种类型的测试,包括单元测试、集成测试和端到端测

Selenium 获取接口响应数据

目录前言seleniumwire简介功能兼容性目录安装创建webdriver获取请求请求对象限制请求捕获前言有时候需要知道UI界面操作的同时接口响应数据是否正常,这时就需要获取接口响应数据。Selenium本身没有获取接口响应的api,但是可以通过第三方库seleniumwire获取接口响应数据。seleniumwire简介SeleniumWire扩展了Selenium的Python绑定,使您可以访问浏览器发出的底层请求。您以与Selenium相同的方式编写代码,但您获得了额外的API来检查请求和响应,并对其进行动态更改。功能纯Python,用户友好的API捕获HTTP和HTTPS请求拦截请求

Selenium chrome headless模式下加载扩展的问题

Seleniumchromeheadless模式下加载扩展的问题引言加载扩展headless模式下加载插件失败原因最新方式总结引言Seleniumheadless是比较常用的自动化测试手段,但是在很长一段时间无法加载扩展。本文将介绍Seleniumchrome如何加载扩展以及headless模式下加载扩展的问题及解决方式。加载扩展chrome_option=webdriver.ChromeOptions()#方式一chrome_option.add_argument("--user-data-dir="+plugin_path)#方式二chrome_options.add_extension(

【selenium】页面弹窗 alert 操作

Selenium页面消息框处理2alert:警告消息框confirm:确认消息框prompt:提示消息对话框还有一种是页面弹框,类似百度登录,这种可以直接定位到,此处忽略。操作alert的方法#获取当前页面上的警告框alert=switch_to.alert()alert.text#返回文本信息alert.accept()#确定alert.dismiss()#取消alert.send_keys("hello")#输入文本1.alertalert()方法用于显示带有一条指定消息和一个确认按钮的警告框。示例"""1.切换到iframe内,点击按钮,弹出弹窗2.弹窗内点击确定或取消3.退出alert

【selenium】页面弹窗 alert 操作

Selenium页面消息框处理2alert:警告消息框confirm:确认消息框prompt:提示消息对话框还有一种是页面弹框,类似百度登录,这种可以直接定位到,此处忽略。操作alert的方法#获取当前页面上的警告框alert=switch_to.alert()alert.text#返回文本信息alert.accept()#确定alert.dismiss()#取消alert.send_keys("hello")#输入文本1.alertalert()方法用于显示带有一条指定消息和一个确认按钮的警告框。示例"""1.切换到iframe内,点击按钮,弹出弹窗2.弹窗内点击确定或取消3.退出alert