主要内容
前言
我们除了可以使用selenium的方法定位元素外,还可以通过js来定位,以下总结了几种常用的js定位方法:
1. 定位单个元素
a. 通过id定位
document.getElementById("id")
b. 通过css选择器定位
document.querySelector("css selector")
2. 定位一组元素
a. 通过name定位
document.getElementsByName("Name")
b. 通过标签名定位
document.getElementsByTagName("tag")
c. 通过class类定位
document.getElementsByClassName("class")
d. 通过css选择器定位
document.querySelectorAll("css selector")
示例代码
# 示例 1
##############################################
import time
from selenium import webdriver
driver = webdriver.Chrome()
driver.maximize_window()
driver.implicitly_wait(10)
driver.get("http://www.baidu.com/")
# 通过js返回元素,然后通过selenium输入文本
js = "return document.getElementById('kw')"
element = driver.execute_script(js)
element.send_keys('hwijew')
time.sleep(2)
driver.quit()
# 示例 2
##############################################
import time
from selenium import webdriver
driver = webdriver.Chrome()
driver.maximize_window()
driver.implicitly_wait(10)
driver.get("http://www.baidu.com/")
# 通过js定位元素并输入文本
js = "document.getElementById('kw').value='hwijew'"
element = driver.execute_script(js)
time.sleep(2)
driver.quit()