草庐IT

selenium-wire

全部标签

python+selenium 自动拖拽滑块

selenium自动拖拽滑块以顺丰单号查询为例网址:https://www.sf-express.com/we/ow/chn/sc/waybill/waybill-detail/SFxxxx后面是订单编号先看滑块这种滑块解决方案很多,本文是参照极验滑动验证码;获取滑动验证码完整背景和滑动时展现的背景,二者进行像素点比较,取最左侧不相同的像素点的位置left,即是我们要滑动的位置相对于图像最左侧的位置,届时再减去滑块按钮所在的x轴位置x_pos,就可以得到我们要滑动的长度。此方案的难点在于如何获取完整的背景图(当然方法也不止一种)这里我们很容易就找到了缺块的背景图完整的背景图改如何获取呢,这时候

​selenium中元素定位正确但是操作失败,6种解决办法全稿定

selenium中元素定位正确但是操作失败的原因无外乎以下4种:一、页面没加载好解决方法:添加等待方法,如:time.sleep()二、页面提交需要等待给数据后台解决方法:添加等待方法,如:time.sleep()三、浏览器没有以最大化方式打开,导致元素被隐藏,定位不到解决方法:将网页最大化:driver.maximize_window()如果屏幕比例固定,分辨率有限,通过网页最大化也没办法解决的话,可以通过执行JS方法来实现。browser.execute_script(‘window.scrollBy(200,0)’)#此处(200,0)为网页偏移坐标,200为横坐标,0为纵坐标#wind

自动化测试学习(六)-selenium定位元素之CSS选择器详细用法

目录1.通过class属性定位2.通过id属性定位3.通过标签名定位4.其他方法定位  CSS是一种语言,它可以比较灵活的选择控件的任意属性,一般情况下比Xpath快,下面我们详细介绍CSS的用法。CSS常见语法如下表所示: 选择器示例描述.class.s_ipt选择class="s_ipt"的所有元素#id#kw选择id="kw"的所有元素**选择所有元素elementinput选择所有元素element>elementspan>input选择下的所有元素element+elementdiv+a选择同一级中元素之后的所有元素[attribute=value][type=text]选择type

selenium4 “Unable to obtain working Selenium Manager binary”的错误解决方式之一

起因使用环境:python=3.7selenium=4.11浏览器:Edge起因是想搞个脚本玩一玩,安装selenium的时候发现发现会报错。我是用conda安装的,第一次发现他给我安装的竟然是selenium3,然后就查阅了相关文档,发现py3.7是支持selenium4的,于是乎就升级到了最新的selenium4.11版本。首先,是需要上一下Edge官方webdriver使用文档页面,并按照指示在这个网站下载对应的webdriver驱动,并添加path环境变量(按照我的解决方法其实不用添加)。然后按照网上的教程,简单的写了一个脚本,其中创建webdriver的Edge实例代码如下:from

selenium 4(python)快速入门-1 简介

Selenium历史Selenium为浏览器自动化提供了先进的功能,从业者通常用它来实现网络应用的端到端测试。Selenium由三个核心组件组成:WebDriver,Grid,和IDE。JasonHuggins和PaulHammant于2004年在Thoughtworks工作时创建了Selenium。他们选择了"Selenium"这个名字作为与惠普公司开发的现有测试框架Mercury的对应物。这个名字很有意义,因为化学物质硒以减少汞的毒性而闻名。最初版本的Selenium(今天被称为SeleniumCore)是一个JavaScript库,在网络应用中模拟用户操作。SeleniumCore解释S

Selenium的使用——一篇文章带你入门Selenium

文章目录1.准备工作2.基本使用3.声明浏览器对象4.访问页面5.查找节点单个节点多个节点6.节点交互7.动作链8.执行JavaScript9.获取节点信息获取属性读取文本值获取id、位置、标签名和大小10.切换Frame11.延时等待隐式等待显示等待12.前进和后退13.Cooikes14.选项卡管理15.异常处理Selenium是一个自动化测试工具,利用它可以驱动浏览器执行特定的动作,如点击、下拉等操作等,同时还可以获取浏览器当前呈现的页面代码,做到可以见即可爬。对于一些JavaScript动态渲染的页面来说,此种抓取方式非常有效。1.准备工作本文以Chrome为例来讲解Selenium的

Windows Key+UP Selenium

我需要使用windows键+up因此,我可以最大化我的窗户。但是没有选择windows钥匙driver.keyboard.sendkeys(Keys.);不确定是否有解决方案。看答案还有许多其他方法可以Maximize浏览器窗口。这是我推荐的:driver.Manage().Window.Maximize();其他方法包括:设置Size手动:driver.Manage().Window.Size=newSize(1024,768);通过IJavaScriptExecutor:((IJavaScriptExecutor)driver).ExecuteScript("window.resizeTo

selenium启动报错:selenium.common.exceptions.SessionNotCreatedException: Message: session not created

错误提示:selenium.common.exceptions.SessionNotCreatedException:Message:sessionnotcreated:ThisversionofChromeDriveronlysupportsChromeversion96Currentbrowserversionis102.0.5005.63原因:Chrome版本和ChromeDriver版本不一致,极有可能是Chrome浏览器自动升级了新版本,导致两者版本差异,运行不了。解决方法:1)查看Chrome浏览器的版本我这里是102版本的;2)下载对应版本的ChromeDriver下载地址:Ch

在Selenium Webdriver中应用代理网关

我的目标是在SeleniumWebdriver内应用代理网关(例如Geosurf.io)。我需要通过使用所需的功能,因为似乎所需的功能是插入代理[网关]的唯一方法(资源).所需的功能功能在硒网格(不仅在普通的硒服务器中)上起作用。硒网格文档.我已经在本地Windows10机器上成功运行SeleniumGrid。因此,我编写了以下代码以应用所需的功能和代理网关用于SeleniumWebdriver中使用的功能:importrequestsfromseleniumimportwebdriverfromselenium.webdriver.common.desired_capabilitiesimp

【Selenium】chromedriver新版本与Chrome自动更新版本不匹配问题

python代码运行出现如下错误:ThisversionofChromeDriveronlysupportsChromeversion114Currentbrowserversionis116.0.5845.141withbinarypathC:\ProgramFiles\Google\Chrome\Application\chrome.exe解决方案:1.查看当前Google浏览器版本:版本116.0.5845.141(正式版本)(64位)2.下载对应的浏览器驱动chromedriver压缩包,根据你电脑的不同自行选择吧.win64选win32即可.,压缩结果如下:(如果版本号对不上,可以对