programing

셀레늄에서 원소의 속성을 얻는 방법

css3 2023. 9. 7. 21:56

셀레늄에서 원소의 속성을 얻는 방법

저는 Python에서 셀레늄과 함께 일하고 있습니다.저는 그것을 받고 싶습니다..val()<select>요소가 제가 기대하는 것인지 확인해보세요.

이게 내 암호입니다.

def test_chart_renders_from_url(self):
    url = 'http://localhost:8000/analyse/'
    self.browser.get(url)
    org = driver.find_element_by_id('org')
    # Find the value of org?

이거 어떻게 해요?셀레늄 문서에는 원소 선택에 관한 내용은 많지만 속성에 관한 내용은 없는 것 같습니다.

당신은 아마도 당신을 찾고 있을 것입니다.get_attribute(). 여기에도 예시가 나와 있습니다.

def test_chart_renders_from_url(self):
    url = 'http://localhost:8000/analyse/'
    self.browser.get(url)
    org = driver.find_element_by_id('org')
    # Find the value of org?
    val = org.get_attribute("attribute name")

파이썬

element.get_attribute("attribute name")

자바

element.getAttribute("attribute name")

루비*

element.attribute("attribute name")

C#

element.GetAttribute("attribute name");

최근 개발된 웹 어플리케이션들이 자바스크립트를 이용하면서 jQuery, AngularJS, ReactJS 등은 셀레늄을 통해 요소의 속성을 검색하려면 속성을 검색하기 전에 WebDriverWait를 유도하여 WebDriver 인스턴스지연되는 Web Client, 즉 Web Browser와 동기화해야 할 가능성이 있습니다.

몇 가지 예:

  • 파이썬:
    • 가시 요소(예: 태그)에서 속성을 검색하려면 다음과 같이 visibility_of_element_located(로케이터)expected_conditions를 사용해야 합니다.

      attribute_value = WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.ID, "org"))).get_attribute("attribute_name")
      
    • 대화형 요소에서 속성을 검색합니다(예:<input>tag) 다음과 같이 expected_conditions를 element_to_be_clickable(로케이터)로 사용해야 합니다.

      attribute_value = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.ID, "org"))).get_attribute("attribute_name")
      

HTML 속성

아래는 HTML에서 자주 사용되는 일부 속성 목록입니다.

HTML Attributes

참고: HTML 요소에 대한 모든 속성의 전체 목록은 다음에 나와 있습니다. HTML Attribute Reference

언급URL : https://stackoverflow.com/questions/30324760/how-to-get-an-attribute-of-an-element-from-selenium