CSS 지정이 아닌 텍스트 값을 기준으로 Selenium 등의 요소를 원하는 경우

예컨대 이런 요소가 있어도
<div class="hoge">Hello<div>
CSS가 지정한 것이 아니라'텍스트는'Hello'의 조건으로 얻기를 원합니다div.어떻게 하면 좋을까 고민하다 보니 CSS Selector가 아닌 XPath를 사용하면 된다.
div[text()="Hello"]
이렇게 하면 됩니다.text() 이전 부분은 최대한 광선을 줄인다.
Selenium Webdriver라면 이런 느낌이에요.
driver.find_element(By.XPATH, '//div[text()="Hello"]')
생 JSquerySelector라면 xpath를 지원하지 않기 때문에 사용해야 한다document.evaluate().Pupeteer$x라면사용법이 복잡하니 MDN을 열심히 읽어 보십시오.
https://developer.mozilla.org/ja/docs/Web/JavaScript/Introduction_to_using_XPath_in_JavaScript
참조:
https://stackoverflow.com/questions/1520429/is-there-a-css-selector-for-elements-containing-certain-text
https://kurozumi.github.io/selenium-python/locating-elements.html

좋은 웹페이지 즐겨찾기