python+selenium+js操作网页元素

调用JS语法需要用到selenium中的方法 execute_script() ,参数直接填写JS语法。

# 1、通过元素id属性,获取元素
document.getElementById('id');
# 2、通过元素name属性,获取元素列表
document.getElementsByName(‘name’);

# 3、通过标签名,获取元素列表
document.getElementsByTagName(‘tag_name’);

# 4、通过类名,获取元素列表
document.getElementsByClassName(“class_name”);

# 5、通过选择器,获取一个元素
document.querySelector(“css selector”)

# 6、通过CSS选择器,获取元素列表
document.querySelectorAll(“css selector”)

  

from selenium import webdriver
import time
driver = webdriver.Chrome()
driver.get('https://www.baidu.com')
js1 = "document.getElementById('kw').value='测试-安静博客园'"
driver.execute_script(js1)
time.sleep(2)
js2 = 'document.getElementById("su").click()'
driver.execute_script(js2)

  

# 修改元素属性
document.getElementById("id").setAttribute("属性名","属性值")

  

1、删除属性

# 删除属性
document.getElementById("id").removeAttribute("属性值")
2、获取属性

# 获取元素属性值
document.getElementById("id").getAttribute(属性值)
# 如果想要获取js返回的属性值,需要js前加return
js2 = ‘return document.getElementById(“anjing”).getAttribute(“name”)’
x = driver.execute_script(js2)
print(x)

3、修改属性值

# 修改属性值
document.getELementById("id").属性="属性值"

  

posted @ 2023-05-09 17:09  基础很差  阅读(296)  评论(0编辑  收藏  举报