草庐IT

pytest-selenium

全部标签

selenium元素定位

元素定位:一、单元素定位       1、id定位:使用元素的id属性定位   2、name定位:使用元素的name属性定位   3、class定位:使用元素的class属性定位     当class属性值有空格时,空格要用点代替     class属性值有空格时,说明元素属于由空格分隔的多种类型,可以只使用其中一种类型定位   4、tag定位:使用元素的标签定位   5、link_text定位:使用超链接上的文字定位   6、partial_link_text定位:使用超链接上的部分文字定位   7、css定位:支持使用元素的任意属性及多个属性定位,当在css定位中使用class属性定位,c

基于IntelliJ IDEA,轻松实现Selenium自动化测试

新手测试工程师刚开始接触到各种大量的测试领域专业术语时通常会感到很困惑。本文内容将帮助新手测试工程师快速入门并理解这些术语的含义。文章提供示例和实际应用场景,以便读者能够更好地理解。在本文中,使用的以下环境:IDE:IntelliJIDEA编程语言:Java浏览器和操作系统:Mac上的Chrome自动化工具:WebDriver+chromedriver1基础知识SeleniumWebDriver是一种工具,用于自动执行手动浏览器工作流。它可以是你厌倦了多次填写的简单表格,也可以是验证数百个网页的复杂系统。这里的思路是加载特定的网页,执行操作,并比较结果是否符合预期。当然,根据使用的平台(如Wi

Selenium基础 — 文件上传&文件下载

文件上传说明:文件上传是web页面上很常见的一个功能,用脚本去实现文件上传很简单。一般场景:在页面中的上传按钮是一个标签,其中type属性为type="file",这种可以用selenium提供的send_keys()方法轻松解决。示例:页面代码片段:文件上传脚本代码:"""1.学习目标:掌握文件上传功能操作2.操作步骤此上传方式适用大多数情况。上传文件标签为input类型,并且type=file时可使用此方式上传。使用send_keys(“需要上传的文件的路径")3.需求在页面中,实现文件上传4.总结4.1在上传文件的时候,对文件类型,大小等做充分验证。4.2在执行上传文件脚本时,加一定的等

python selenium下载一个合适的chromedriver.exe(稳定版本)

可以使用该脚本来进行下载:下载前需要安装如下的依赖requests==2.27.1selenium==4.14.0webdriver_manager==4.0.1下载脚本代码:importjsonimportsubprocessimportshutilimportosimporttimeimportzipfileimportrequestsfromwebdriver_manager.core.os_managerimportOperationSystemManagerfromwebdriver_manager.chromeimportChromeDriverManager,ChromeType

Selenium常用元素定位方法汇总

目录一、webdriver定位方法1、xpath基本定位用法2、xpath相对路径/绝对路径定位3、xpath文本、模糊、逻辑定位一、webdriver定位方法1、id定位driver.find_element_by_id()2、name定位driver.find_element_by_name()3、class定位driver.find_element_by_class_name()4、link定位-->精准定位driver.find_element_by_link_text()5、partial_link定位-->模糊定位driver.find_element_by_partial_lin

〖Python网络爬虫实战㉗〗- Selenium案例实战(一)

订阅:新手可以订阅我的其他专栏。免费阶段订阅量1000+                 python项目实战                Python编程基础教程系列(零基础小白搬砖逆袭)说明:本专栏持续更新中,目前专栏免费订阅,在转为付费专栏前订阅本专栏的,可以免费订阅付费专栏,可报销(名额有限,先到先得)。    即将转为付费专栏,更多详细请看,五一或有优惠活动哦。关于专栏〖Python网络爬虫实战〗转为付费专栏的订阅说明作者:

在Python中与Selenium一起穿过分页桌

我将在以下链接上浏览桌子:http://cancer.sanger.ac.uk/cosmic/sample/overview?id=2120881通过python的硒。这是代码:driver=webdriver.Chrome()driver.get('http://cancer.sanger.ac.uk/cosmic/sample/overview?id=2120881')elem=driver.find_element_by_link_text("Variants")whileelem:elem.click()time.sleep(5)try:elem=driver.find_element

selenium&playwright获取网站Authorization鉴权实现伪装requests请求

文章目录selenium&playwright获取网站Authorization鉴权实现伪装requests请求需求背景知识点:selenium获取已登录网站的用户鉴权信息知识点:playwright获取cookie知识点:playwright获取storage_state提取cookie秃发状况windows禁止chrome浏览器自动更新selenium自动下载驱动playwright无驱动操作已打开浏览器Authorization鉴权playwright事件监听使用route劫持最终代码selenium&playwright获取网站Authorization鉴权实现伪装requests请求

在selenium中如何处理多窗口

这个多窗口之间跳转处理,在实际selenium自动化测试经常遇到。点击一个链接,这个链接会在一个新的tab打开,然后接下来要查找元素在新tab打开的页面,需要先将driver切换至window,然后再定位,步骤如下:1,先获取当前的windowhandle2,操作打开新界面后,获取所有的windowhandles3,遍历windowhandles判断和当前的windowhandle不一样则切换至该windowhandle4,window太多则可以按照title、url等其他信息进行判断切换

继续上一个爬虫,所以说selenium加browsermobproxy

继续,书接上回,这次我通过jsrpc,也学会了不少逆向的知识,感觉对于一般的网站应该都能应付了。当然我说的是简单的网站,遇到那些混淆的,还有那种猿人学里面的题目,还是免谈了。那种需要的水平太高,我学习爬虫的目的也不是找什么工作,只是为了找数据,能够满足我找数据的需要就好。现在我的初步问题已经解决了,原以为可以使用jsrpc一路搜集数据。可是还是遇到了新的问题。接下来我想搜集这个网站的志愿服务项目的数据。发现这个网站的请求类型也比较复杂,要抓到某一个项目的数据,需要多次点击,定位到那个项目,而且进入项目的新页面,好像jsrpc获得的参数也是没什么用的了。不知道为什么。可以先看一下。这时,我知道这