>  기사  >  백엔드 개발  >  Selenium WebDriver(Python)를 사용하여 특정 텍스트가 있는 요소를 찾는 방법은 무엇입니까?

Selenium WebDriver(Python)를 사용하여 특정 텍스트가 있는 요소를 찾는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-10-28 14:45:30620검색

How to Locate Elements with Specific Text Using Selenium WebDriver (Python)?

Selenium WebDriver(Python)에서 특정 텍스트가 있는 요소 찾기

Selenium WebDriver에서 텍스트 콘텐츠를 기반으로 요소를 식별하는 것은 어려운 작업일 수 있습니다. . 특정 텍스트가 포함된 요소를 찾는 단계는 다음과 같습니다.

contains(text(), "text") XPath 사용

가장 직접적인 접근 방식은 다음을 사용하는 것입니다. XPath 표현식 내의 contain() 함수. 이 함수를 사용하면 텍스트 내용이 지정된 문자열과 부분적으로 일치하는 요소를 찾을 수 있습니다. 그러나 기본 동작은 대소문자를 구분합니다.

대소문자 구분을 해결하려면 XPath 표현식에 //* 접두사를 추가하세요.

<code class="python">driver.find_elements_by_xpath("//*[contains(text(), 'My Button')]")</code>

이 표현식은 다음을 포함하는 모든 요소를 ​​찾습니다. 텍스트 콘텐츠 내 어디에서나 "내 버튼"(대소문자 구분 안 함)을 텍스트로 표시합니다.

Element.text 반복 및 확인

또 다른 옵션은 페이지를 방문하여 element.text 속성을 검사하세요. 그러나 이 방법은 계산 비용이 많이 들고 특히 대규모 웹 페이지의 경우 속도가 느릴 수 있습니다.

중첩 요소 식별

겹치는 텍스트 콘텐츠가 있는 중첩 요소를 선택하지 않으려면 요소가 동일한 텍스트를 포함하는 다른 요소의 하위 요소인지 확인해야 합니다. 이는 is_displayed() 및 find_element_by_xpath() 메소드를 사용하여 달성할 수 있습니다.

<code class="python">outer_element = driver.find_element_by_css_selector("div.outer")
if outer_element.is_displayed():
    inner_element = outer_element.find_element_by_xpath("./div[text()='My Button']")</code>

이 코드는 외부 요소가 표시되는지 확인한 다음 XPath 표현식을 사용하여 특정 텍스트.

위 내용은 Selenium WebDriver(Python)를 사용하여 특정 텍스트가 있는 요소를 찾는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.