2
respostas

[Bug] DomCrawler não executa JavaScript

Pessoal, estou fazendo este curso em 12/2024, atualmente a pagina da Alura carrega o nome dos cursos posterior ao carregamento principal da pagina, e ela faz isso com JavaScript, portanto, não é possível fazer a leitura com o DomCrawler. Solicitei a ajuda da Luri e ela me indicou usar Selenium, mas não tem a ver com o conteúdo do curso. Alguem mais teve esse problema? Terei que abandonar esse curso por outro? Se sim, qual?

Inclusive o span utilizado atualmente para o nome dos cursos é 'span.learning-content__name'

2 respostas

Olá Tiago, tudo bem?

De fato, o DomCrawler não é capaz de executar JavaScript, pois ele trabalha apenas com a análise estática do HTML renderizado inicialmente. Como a página da Alura carrega os dados dos cursos dinamicamente via JavaScript, é necessário usar uma ferramenta que suporte a execução de scripts, como o Selenium.

Sugestão:

  1. Utilize o Selenium para simular a interação com a página, permitindo que o JavaScript seja executado e os elementos sejam carregados completamente.
  2. Outra alternativa seria verificar se a página oferece uma API para obter esses dados diretamente, evitando a necessidade de manipulação do DOM carregado dinamicamente.

Não há necessidade de abandonar o curso, pois o uso do Selenium complementará seu aprendizado e pode até enriquecer seu conhecimento em casos mais avançados.

Se precisar de um exemplo prático de como fazer isso com Selenium, me avise e ficarei feliz em ajudar!

Abraços

Seria bom fazer esse teste com Selenium, não é um conhecimento perdido, ele é bem útil, e você não precisa abandonar o curso