Web Scraping (Esperando Carregar Página)

Boa Tarde Pessoal, tudo bem?

Eu estou entrando num website, através do ses$go(“www.website.com.br”). O endereço é
variável e eu criei uma lógica no meu looping utilizando paste0.
No browser, logo depois de eu inputar o endereço, após alguns segundos ele evolui para uma outra URL (essa varia e é bastante extensa). Eu quero raspar o site dessa segunda URL e não da primeira:(“www.website.com.br”).
Eu tentei Sys.sleep pra emular esses segundos que o Browser demora pra atulizar, mas não da certo.
E quando eu insiro ses$getUrl ele me devolve o (“www.website.com.br”) e não a segunda URL atualizada. Conseguem me dar um caminho?

Olá @Matheus, tudo bem?

O que você pode fazer nesse caso é uma função que testa se determinado elemento está disponível.

Por exemplo (não reprodutível)


u_site <- "exemplo.com"

ses$go(u_site)

funcao_que_tenta_acessar_elemento <- function(ses) {
  ses$findElement("#id-elemento")
}

funcao_segura <- purrr::possibly(funcao_que_tenta_acessar_elemento, NULL)

teste_elem <- funcao_segura(ses)
encontrou_elemento <- !is.null(teste_elem)
dormir <- .1

while (!encontrou_elemento) {
  Sys.sleep(dormir)
  teste_elem <- funcao_segura(ses)
  encontrou_elemento <- !is.null(teste_elem)
}