Selenium Python을 사용하여 Shadow-Root 요소에서 정보 추출
이 게시물에서는 웹사이트 https에서 제품 정보를 추출하는 문제를 다룹니다. ://www.tiendasjumbo.co/buscar?q=mani. 이러한 요소는 #shadow-root(개방형) 요소 내에 배치되므로 기존 추출 방법이 효과적이지 않습니다.
Shadow-Root 이해
Shadow-root는 기술입니다. DOM 요소를 캡슐화하여 기본 HTML 문서에서 숨기는 데 사용됩니다. 섀도우 루트 내의 요소에 액세스하려면 특정 섀도우 루트 로케이터를 활용해야 합니다.
해결책: ShadowRoot.querySelector() 사용
제품 라벨을 추출하려면, 우리는 다음 전략을 구현합니다:
코드 예:
<code class="python">from selenium import webdriver from random import randint driver = webdriver.Firefox(executable_path="C:\Program Files (x86)\geckodriver.exe") time.sleep(4) url = "https://www.tiendasjumbo.co/buscar?q=mani" driver.maximize_window() driver.get(url) item = driver.execute_script("return document.querySelector('impulse-search').shadowRoot.querySelector('div.group-name-brand h1.impulse-title span.formatted-text')") print(item.text)</code>
이 코드는 제공된 URL에 대한 제품 라벨을 인쇄합니다.
추가 참고 사항:
위 내용은 Selenium Python을 사용하여 Shadow-Root 요소에서 제품 정보를 추출하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!