Chr*_*ris 0 html python selenium selenium-webdriver
我正在尝试从其他选项列表中选择“seltarget”。
HTML:
<div class="filter-item" data-reactid=".3.1.0.0.1.0.0.3.0.0.0.3">seltarget</div>
Run Code Online (Sandbox Code Playgroud)
当导出到 python 文件时,它建议我通过 xpath 定位元素:
driver.find_element_by_xpath("//div[@id='quickswitcher']/div/nav/ul/li/div/div/menu/div[2]/div/div/div/div[5]").click()
Run Code Online (Sandbox Code Playgroud)
这暂时有效,因为“seltarget”恰好是列表中的第 5 位。上面的行将选择列表中第 5 个选项。我想更具体地选择元素“seltarget”
定位方式link_text仅适用于<a>标签。要定位此元素,您可以使用该类(如果它是唯一的)
driver.find_element_by_class_name('filter-item').click()
Run Code Online (Sandbox Code Playgroud)
或者data-reactid属性
driver.find_element_by_css_selector('[data-reactid*="3.1.0.0.1.0.0.3.0.0.0.3"]').click()
Run Code Online (Sandbox Code Playgroud)
要按文本定位,您还可以使用 css_selector
driver.find_element_by_css_selector('div:contains("seltarget")').click()
Run Code Online (Sandbox Code Playgroud)
或者 xpath
driver.find_element_by_xpath('//div[contains(text(), "seltarget")]').click()
Run Code Online (Sandbox Code Playgroud)