欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

python executescript_在selenium中一些相对常用的JavaScript事件

发布时间:2023/12/19 41 豆豆
生活随笔 收集整理的这篇文章主要介绍了 python executescript_在selenium中一些相对常用的JavaScript事件 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

输入框输入:

1.找到输入框的id,然后进行输入操作

ordinal :输入框的id

parameter :需要输入的内容

browser.execute_script("document.getElementById(\‘" + ordinal + "\‘).value=\‘" + parameter + "\‘;")

元素点击:

1..找到元素(selenium找元素的8种方式的其中一种即可)对象然后进行点击

python:

prompt该元素在页面中的cssSelector

confirm=browser.find_element_by_css_selector(prompt)

browser.execute_script("arguments[0].click();", confirm)

java:

1.定义JavascriptExecutor 对象2.找到element 对象3.执行js指令

JavascriptExecutor jse=(JavascriptExecutor) driver;

WebElement element= driver.findElement(By.xpath("//*[@class=‘referBtn‘]/input"));

jse.executeScript("arguments[0].click();", element);

2.通过元素id进行点击

prompt:该元素在页面中的id

browser.execute_script("document.getElementById(\‘" + prompt + "\‘).click();")

光标移动:

1. 光标选中输入框

ordinal :元素id

browser.execute_script("document.getElementById(\‘" + ordinal + "\‘).focus();")

ele:元素对象

browser.execute_script("arguments[0].focus();", ele)

应用场景:鼠标位于输入框之后的一些事件。

代替:可用selenium中自带的鼠标移动(ActionChains)操作进行代替

2.光标从这个输入框中移出

ordinal :元素id

browser.execute_script("document.getElementById(\‘" + ordinal + "\‘).blur();")

ele:元素对象

browser.execute_script("arguments[0].blur();", ele)

应用场景:当光标不在输入框是,进行一些判断。

代替:可用selenium中自带的鼠标移动(ActionChains)操作进行代替

缺点:当你用js进行输入之后,在使用js移出指令时。输入框中事件的判断不会触发。。

搭配方式:

1.通过ele的输入+js移出指令。

例如:

ele =browser.find_element_by_id(id)

ele.click()

ele.clear()

ele.send_keys(parameter)

browser.execute_script("arguments[0].blur();", ele)

2.通过js指令执行光标选中+js输入+js移除

ordinal:元素id

parameter:需要输入的元素#光标选中id为ordinal的输入框

browser.execute_script("document.getElementById(\‘" + ordinal + "\‘).focus();")#在元素id为ordinal的输入框中输入parameter值

browser.execute_script("document.getElementById(\‘" + ordinal + "\‘).value=\‘" + parameter + "\‘;")#光标从id为ordinal的输入框中移出

browser.execute_script("document.getElementById(\‘" + ordinal + "\‘).blur();")

页面滑动:

1.界面滑动到顶部

python:

driver.execute_script("window.scrollTo(0,0)")

java:

((JavascriptExecutor) driver).executeScript("window.scrollTo(0,0)");

2.界面滑动到底部

python:

#界面移动底部

driver.execute_script("window.scrollTo(0,document.body.scrollHeight)")

java:

//界面移动底部

((JavascriptExecutor) driver).executeScript("window.scrollTo(0, document.body.scrollHeight)");

3.界面滑动到指定位置:

python:

#界面往下移动700像素

driver.execute_script("window.scrollTo(0,700)")

java:

//界面往下移动700像素

((JavascriptExecutor) driver).executeScript("window.scrollBy(0, 700)");

4.界面滑动到指定元素位置(如果使用这个命令,那么元素位于屏幕中间。。----如有错误,请留言。。)

python:

# 移动到元素element对象的“顶端”与当前窗口的“顶部”对齐

driver.executeScript("arguments[0].scrollIntoView();", element)

java:

//移动到元素element对象的指定的位置

((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoViewIfNeeded(true);",element);

注:后续更新,不懂的可以留言。请勿喷。!!!~~~~

总结

以上是生活随笔为你收集整理的python executescript_在selenium中一些相对常用的JavaScript事件的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。