美文网首页
19. selenium- 元素定位By.CLASS_NAME

19. selenium- 元素定位By.CLASS_NAME

作者: 薛东弗斯 | 来源:发表于2024-03-04 07:07 被阅读0次
image.png
image.png
image.png
import time
from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()
driver.get('https://www.bilibili.com')
time.sleep(3)
# 只获取class属性的第一个元素
driver.find_element(By.CLASS_NAME,'nav-search-input').send_keys('rdma')
time.sleep(3)
# 获取class属性的所有元素
driver.find_element(By.CLASS_NAME,'nav-search-btn').click()
time.sleep(3)

当CLASS_NAME不唯一时

image.png
image.png
import time
from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()
driver.get('https://www.bilibili.com')
time.sleep(3)
# 只获取class属性的第一个元素
# driver.find_element(By.CLASS_NAME,'nav-search-input').send_keys('rdma')
# time.sleep(3)
# 获取class属性的所有元素
# driver.find_element(By.CLASS_NAME,'nav-search-btn').click()
driver.find_elements(By.CLASS_NAME,'channel-link')[0].click()
time.sleep(10)

.find_elements返回列表,可迭代对象

import time
from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()
driver.get('https://www.bilibili.com')
time.sleep(3)
# 只获取class属性的第一个元素
# driver.find_element(By.CLASS_NAME,'nav-search-input').send_keys('rdma')
# time.sleep(3)
# 获取class属性的所有元素
# driver.find_element(By.CLASS_NAME,'nav-search-btn').click()
# driver.find_elements(By.CLASS_NAME,'channel-link')[0].click()
# time.sleep(3)
# 注意,只有.find_elements返回列表,可迭代对象。.find_element 返回单个元素,不可迭代
for ele in driver.find_elements(By.CLASS_NAME,'channel-link'):
    print(ele.text)

当class中间有空格时,只能选取一个作为参数传递

driver.get('https://www.baidu.com/')
time.sleep(3)
driver.find_element(By.CLASS_NAME,'c-font-normal')
time.sleep(3)

相关文章

网友评论

      本文标题:19. selenium- 元素定位By.CLASS_NAME

      本文链接:https://www.haomeiwen.com/subject/rhylzdtx.html