상세 컨텐츠

본문 제목

[파이썬] 셀레니움 - 웹요소 찾기 - find

IT/파이썬

by SageIN 2022. 2. 24. 09:51

본문

반응형
<ol id="vegetables">
 <li class="potatoes">…
 <li class="onions">…
 <li class="tomatoes"><span>Tomato is a Vegetable</span>…
</ol>
<ul id="fruits">
  <li class="bananas">…
  <li class="apples">…
  <li class="tomatoes"><span>Tomato is a Fruit</span>…
</ul>

일치하는 요소 찾기 - 클래스 명이 tomatoes 인 요소 찾기

- 순차적으로 찾기 때문에 처음 만나는 요소를 찾게 됩니다.

vegetable = driver.find_element(By.CLASS_NAME, "tomatoes")

부모를 찾고 그 아래 자식을 찾는 방법으로 해야 내가 찾고자 하는 요소를 찾을 수 있습니다.

 

fruits = driver.find_element(By.ID, "fruits")
fruit = fruits.find_elements_by_id("tomatoes")

- 일치하는 모든 요소 찾기

 

plants = driver.find_elements(By.TAG_NAME, "li")

- 찾은 요소 값 가져오기 

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Firefox()

    # Navigate to Url
driver.get("https://www.example.com")

    # Get all the elements available with tag name 'p'
elements = driver.find_elements(By.TAG_NAME, 'p')

for e in elements:
    print(e.text)

- 부모요소에서 자식요소를 찾기

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()
driver.get("https://www.example.com")

    # Get element with tag name 'div'
element = driver.find_element(By.TAG_NAME, 'div')

    # Get all the elements available with tag name 'p'
elements = element.find_elements(By.TAG_NAME, 'p')
for e in elements:
    print(e.text)

 

출처 : https://www.selenium.dev/documentation/webdriver/elements/finders/%20tomatoes

반응형

관련글 더보기

댓글 영역