![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
selenium
做一个快乐生活的人
这个作者很懒,什么都没留下…
展开
-
selenium操作windows文件上传窗口
selenium是无法操作windows的窗口的,需要借助win32gui、win32con来进行window窗口的操作 def win32_upload_file(file_path): dialog = win32gui.FindWindow("#32770", "打开") com_box_ex32 = win32gui.FindWindowEx(dialog, 0, "ComboBoxEx32", None) com_box = win32gui.Fi原创 2021-01-22 14:57:49 · 638 阅读 · 0 评论 -
运行UI自动化项目时,某一天浏览器后台运行,程序运行到visibility_of_element_located时报错。
运行UI自动化项目时,某一天浏览器后台运行,程序报错,报错信息如下:self = <selenium.webdriver.remote.errorhandler.ErrorHandler object at 0x0E23FDB0>response = {'sessionId': '948dc9be0bc706782ff514b323417379', 'status': 10, 'value': {'message': 'stale element reference: element...v原创 2021-01-04 13:52:25 · 826 阅读 · 0 评论 -
selenium使用execute_script方法执行JavaScript操作
execute_script(script, *args)有些在页面上无法定位的元素,需要执行js操作的时候,就需要用此方法,比如滚动条滚动操作实例:from selenium import webdriverclass TestExample: def test_example1(self): driver = webdriver.Chrome() driver.maximize_window() driver.get("https://ww原创 2020-12-14 15:09:30 · 19000 阅读 · 4 评论 -
Selenium clear()方法无法清掉数据
问题描述:clear()方法执行过后, 数据还是在.根本原因:存在镜像节点. 操作clear()清掉数据后, 镜像节点的数据还在, 就会再补充回去.解决方法:1、通过全选的方式ele = browser.getWebDriver().findElement(By.id("id"));ele.sendKeys(Keys.CONTROL, "a");ele.sendKeys(Keys...转载 2020-04-17 11:33:51 · 1837 阅读 · 0 评论 -
python+selenium获取元素的源码
在做UI自动化的时候,调试代码的时候需要获取到WebElement的HTML源码。可以通过innerHTML属性来获取ele = self.find_element_by_id("id")ele.get_attribute("innerHTML")1.innerHTML属性设置或返回表格行的开始和结束标签之间的 HTML,包括标签。2.outerHTML设置或获取对象及其内容的HTML形...原创 2019-09-05 10:02:02 · 4341 阅读 · 0 评论 -
selenium报错Element is not clickable at point的几种情况
总结下selenium触发点击事件报Element is not clickable at point的几种情况:1、元素未加载出来就进行了点击解决方法:在点击之前使用显示等待WebDriverWait(driver, timeout=).until(EC.visibility_of_element_located(元素的定位方式,元素定位表达式))2、需要点击的元素在frame/ifr...原创 2019-09-04 15:11:36 · 1165 阅读 · 1 评论 -
python+selenium基础之XPATH轴定位
转载:https://www.cnblogs.com/hanmk/p/9015502.html1.xpath轴是什么w3cschool上的定义如下:语法2.具体应用(1)descendant表示取当前节点的所有后代元素定位百度首页的“百度一下”按钮可以看到, 标签的父元素是标签,而标签的父元素是标签,所以可以通过先定位标签,然后利用descendant定位标签 #xpath路...转载 2019-08-28 16:16:04 · 555 阅读 · 0 评论 -
python+selenium元素定位
一、selenium八大元素定位1.1、通过idfrom selenium import webdriverdriver = webdriver.Chrome()driver.get("https://www.baidu.com/")# 通过元素的id进行定位driver.find_element_by_id("kw")1.2、通过name driver.find_elemen...原创 2019-08-28 15:41:13 · 262 阅读 · 0 评论 -
selenium 滚动元素至页面可见
在做自动化时,有时由于web页面过长,需要模拟将页面往下滚动,然后使元素在web页面上可见滚动页面的方法:window.scrollBy()window.scrollBy(0,500) 向下滚动500个像素window.scrollBy(0,-500) 向上滚动500个像素window.scrollBy(500,0) 向右滚动500个像素window.scrollB...原创 2019-08-21 15:58:05 · 3662 阅读 · 0 评论 -
python selenium在浏览器打开一个新窗口
driver = webdriver.Chrome()driver.get("要打开的地址")有时候使用get的方式打开不会打开新的页签,如果想在新页签打开,可以使用调用js执行js = ‘window.open(“https://baidu.com”)’driver.excute_scripts(js)...原创 2019-08-21 15:33:10 · 5660 阅读 · 1 评论 -
解决python selenium Action模拟拖拽无效
采用物理模式鼠标操作的解决方法1. 首先通过 pip install pypiwin32导入包2. 测试代码import win32api, win32con # 移动到某点坐标 win32api.SetCursorPos((782, 355)) time.sleep(0.5) win32api.mouse_event(win32con.M...原创 2019-08-21 15:33:17 · 1926 阅读 · 0 评论