When I go to a certain webpage I am trying to find a certain element and piece of text:
<span class="Bold Orange Large">0</span>
This didn't work: (It gave an error of compound class names...)
elem = browser.find_elements_by_class_name("Bold Orange Large")
So I tried this: (but I'm not sure it worked because I don't really understand the right way to do css selectors in selenium...)
elem = browser.find_elements_by_css_selector("span[class='Bold Orange Large']")
Once I find the span element, I want to find the number that is inside (the content).
num = elem.(what to put here??)
Any help with CSS selectors, class names, and finding element text would be great!
Thanks.
Oh! and my other problem is that there are multiple of those exact span elements but with different numbers inside. How can I deal with that?
you want: elem.text
to get "the number that is inside".
explanation:
in your example, elem
is an instance of webdriver's WebElement
class (from selenium.webdriver.remote.webelement)
a WebElement instance has several properties, including:
tag_name
text
size
location
parent
id
.text
property contains "the content"
"and my other problem is that there are multiple of those exact span elements ..how can I deal with that?"
please don't ask several questions in one.. it doesn't work well with SO's format.
but basically, use the find_elements_*
instead of find_element_*
. your locator can then return a list of matching WebElement
instances instead of a single matching instance... which you can filter further.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With