如何找到包含特定类值的元素?

2024-05-19 00:23:02 发布

您现在位置:Python中文网/ 问答频道 /正文

如果类中包含更多值,则脚本无法找到元素。 例如这个类:

<a class="a-link-normal s-access-detail-page  s-color-twister-title-link a-text-normal">

我只想通过使用类--s-access-detail-page来找到这个元素。在

通过查找这样的元素,我得到一个错误:找不到元素:

^{pr2}$

如果我要查找的元素的类包含:

a-link-normal a-text-normal

页面上的类:

解析URL是Amazon:https://www.amazon.com/s?k=smart+watches&page=1 需要获取产品URL。在


Tags: text脚本url元素accesstitle错误page
3条回答

确保您有一个等待,并且您可以只使用一个简单的类选择器

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

url = 'https://www.amazon.com/s?k=smart+watches&page=1'
d = webdriver.Chrome()
d.get(url)
links = WebDriverWait(d,10).until(EC.presence_of_all_elements_located((By.CSS_SELECTOR, ".s-access-detail-page")))
linkUrls = [link.get_attribute('href') for link in links]
print(linkUrls)

试试其中一个这个。这个应该行得通。在

find_element_by_css_selector("a.a-link-normal")

或者

^{pr2}$

或者

find_element_by_css_selector("a.s-access-detail-page")

或者

find_element_by_css_selector("a.s-color-twister-title-link")

您可以只使用以下CSS选择器:

.s-access-detail-page

希望对你有帮助!在

相关问题 更多 >

    热门问题