Как найти определенный тег c с несколькими классами в селене - PullRequest
0 голосов
/ 20 июня 2020

Я пытаюсь сделать простого бота для твиттера, чтобы отправлять кому-то сообщение напрямую. Но моя проблема в том, что я не знаю, как мне найти элементы с несколькими классами. Например, я пытаюсь найти эту часть веб-страницы:

<span class="css-901oao css-16my406 r-1qd0xha r-ad9z0x r-bcqeeo r-qvutc0">@SomeUser</span>

, и для этого используется этот код в python:

mes = bot.find_element_by_css_selector("span.css-901oao css-16my406 r-1qd0xha r-ad9z0x r-bcqeeo r-qvutc0")

или это:

mes = bot.find_element_by_xpath("//span[@class='span.css-901oao css-16my406 r-1qd0xha r-ad9z0x r-bcqeeo r-qvutc0']")

но я получаю это сообщение:

Unable to locate element: span.css-901oao css-16my406 r-1qd0xha r-ad9z0x r-bcqeeo r-qvutc0

где я ошибаюсь? почему он не может его найти? Я попытался найти больше руководств и справочников, но есть лишь несколько простых примеров, и я мало из них узнал.

1 Ответ

1 голос
/ 20 июня 2020

Если вы хотите использовать CSS Селектор с несколькими классами:

span.css-901oao.css-16my406.r-1qd0xha.r-ad9z0x.r-bcqeeo.r-qvutc0

В CSS селекторе вы должны разделить каждый класс с помощью .(dot)

Если вы хотите использовать Xpath с несколькими классами:

//span[@class="css-901oao css-16my406 r-1qd0xha r-ad9z0x r-bcqeeo r-qvutc0"]
...