Como extrair informações de uma raiz de sombra usando Selenium Python
Selenium fornece uma estrutura robusta para automação da web, incluindo a capacidade de extrair informações de elementos da web carregados dinamicamente, como raízes de sombra. Este guia demonstrará como superar o desafio de extrair rótulos de produtos e outros campos de uma loja online específica dentro de uma raiz sombra.
O desafio: extrair informações de uma raiz sombra
Ao encontrar raízes sombrias, torna-se necessário explorar estratégias alternativas para localização e extração de elementos. A abordagem XPath convencional pode não ser suficiente. Este guia apresenta uma solução que aproveita o método execute_script() do Selenium para acessar a raiz sombra e recuperar as informações desejadas.
Solução: usando ShadowRoot.querySelector()
Para extrair o rótulo do produto, utilize a seguinte abordagem:
driver.get('https://www.tiendasjumbo.co/buscar?q=mani')
item = driver.execute_script("return document.querySelector('impulse-search').shadowRoot.querySelector('div.group-name-brand h1.impulse-title span.formatted-text')")
print(item.text)
Saída:
La especial mezcla de nueces, maní, almendras y marañones x 450 g
Conclusão
Esta solução demonstra como extrair informações de maneira eficaz de uma raiz sombria usando Selenium Python, fornecendo uma técnica confiável para automatizar interações na web, mesmo em cenários desafiadores.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3