<div class="_2S1VP copyable-text selectable-text" data-tab="1" dir="ltr" spellcheck="true" contenteditable="true"></div>
<div class="_2S1VP copyable-text selectable-text" data-tab="3" dir="ltr" contenteditable="true"></div>
我是初学者,我很难区分/指定第一类和第二类
typing = bot.find_element_by_xpath('//div[@class = "_1Plpp"]')
这似乎不起作用,只使用类名总是会出现不需要的第二个具有相同类名的类名,我注意到它有 data-tab="3"而另一个有 data-标签=“1” 我将如何指定带有 data-tab="1"的那个而不是另一个。
最佳答案
由于两个元素的 class 属性包含相似的值,您将无法仅通过 class 属性来区分它们,您可能需要考虑一些其他属性。
要识别第一个元素,您可以使用以下任一命令 Locator Strategies :
使用
css_selector
和 data-tab 属性:typing = bot.find_element_by_css_selector("div.copyable-text.selectable-text[data-tab='1']")
使用
xpath
和 data-tab 属性:typing = bot.find_element_by_xpath("//div[contains(@class, 'copyable-text') and @data-tab='1']")
使用
xpath
和 data-tab 属性:typing = bot.find_element_by_xpath("//div[contains(@class, 'selectable-text') and @data-tab='1']")
关于python - 即使使用 Selenium 和 Python 有多个具有相同类名的元素,如何通过类名识别元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62151967/