ATENÇÃO NOVOS USUÁRIOS

Se registrou recentemente? Seu cadastro será avaliado e mendiante aprovação, a conta será ativada e você poderá usufruir do fórum. O tempo de avaliação gira em torno de 24 a 48 horas.

Esqueceu sua senha?

Você pode usar o mecanismo de lembrete neste link: Recuperar senha

Você receberá um link de reativação no email cadastrado.

Não recebeu o email? Lembre-se checar o Lixo Eletrônico.

Extrair todos os hyperlinks de um site com selenium?[RESOLVIDO]

A Web está aí, não há como negar. Ela é onipresente em praticamente toda operação eletrônica realizada nos dias de hoje. Como não podia ser diferente, o Excel, ferramenta máxima para analistas e profissionais das mais diversas áreas do mercado precisa estar alinhado com esta necesssidade. E ele está! Neste forum, o debate é focado em expor dúvidas, sugestões, modelos de código e exemplos de uso do Excel na Integração com tecnologias Web.
pedrodssj
Colaborador
Colaborador
Mensagens: 16
Registrado em: Qua Nov 06, 2019 2:56 pm

Extrair todos os hyperlinks de um site com selenium?[RESOLVIDO]

Mensagem por pedrodssj » Seg Abr 13, 2020 7:47 pm

como faço?

Com internet Controls e assim:
me ajudem a converter este codigo a baixo para selenium!

Código: Selecionar todos

Sub scrapeHyperlinksWebsite()

Dim ie As InternetExplorer
Dim html As HTMLDocument
Dim ElementCol As Object
Dim ElementCol1 As Object
Dim Link As Object
Dim erow As Long
Application.ScreenUpdating = False
Set ie = New InternetExplorer
ie.Visible = False
ie.navigate "https://www.academiadasapostasbrasil.com/"


Do While ie.readyState <> READYSTATE_COMPLETE
DoEvents
Loop

Set html = ie.document

'Range("A1") = html.DocumentElement.innerHTML

Set ElementCol = html.getElementsByTagName("a")

For Each Link In ElementCol
erow = Worksheets("planilha1").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
Cells(erow, 1).Value = Link
Cells(erow, 1).Columns.AutoFit
Next


Set ie = Nothing
Application.StatusBar = ""
Application.ScreenUpdating = True

End Sub
Editado pela última vez por pedrodssj em Sáb Abr 18, 2020 7:35 pm, em um total de 1 vez.



Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Avatar do usuário
webmaster
Administrador
Mensagens: 2806
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Extrair todos os hyperlinks de um site com selenium?

Mensagem por webmaster » Qua Abr 15, 2020 10:36 am

Código: Selecionar todos

Sub selenium_scrapeHyperlinksWebsite()
    Dim driver As WebDriver: Set driver = New ChromeDriver
    Dim todosOsLinks As WebElements, linkUnico As WebElement
    driver.Get "https://www.academiadasapostasbrasil.com/"
    
    Set todosOsLinks = driver.FindElementsByTag("a")
    
    For Each linkUnico In todosOsLinks
        Debug.Print linkUnico.Attribute("href")
    Next linkUnico
End Sub
Adapte como quiser!


Tomás
https://www.tomasvasquez.com.br/blog
https://www.tomasvasquez.com.br/cursocsharp
https://twitter.com/tomamais
Se sua dúvida foi solucionada, acrescente [RESOLVIDO] ao título.

pedrodssj
Colaborador
Colaborador
Mensagens: 16
Registrado em: Qua Nov 06, 2019 2:56 pm

Re: Extrair todos os hyperlinks de um site com selenium?

Mensagem por pedrodssj » Qua Abr 15, 2020 6:26 pm

E pra jogar os links para a planilha, exatamente como o que ocorre no internet controls? qual funçao eu uso?



pedrodssj
Colaborador
Colaborador
Mensagens: 16
Registrado em: Qua Nov 06, 2019 2:56 pm

Re: Extrair todos os hyperlinks de um site com selenium?

Mensagem por pedrodssj » Qui Abr 16, 2020 10:28 pm

eu não estou conseguindo colocar na planilha,me ajuda por favor!!!



Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


pedrodssj
Colaborador
Colaborador
Mensagens: 16
Registrado em: Qua Nov 06, 2019 2:56 pm

Re: Extrair todos os hyperlinks de um site com selenium?[RESOLVIDO]

Mensagem por pedrodssj » Sáb Abr 18, 2020 7:37 pm

galera acrescente este codigo para jogar para dentro da planilha

Código: Selecionar todos

 For Each linkUnico In todosOsLinks
        ActiveCell.Offset(0, 1).Value = linkUnico.Attribute("href")
        ActiveCell.Offset(1, 0).Select
    Next linkUnico

e vai ficar assim

Código: Selecionar todos

Sub selenium_scrapeHyperlinksWebsite()
 
 
    Application.ScreenUpdating = False
    Application.Calculation = xlManual


    Dim driver As WebDriver: Set driver = New ChromeDriver
    Dim todosOsLinks As WebElements, linkUnico As WebElement
    driver.Get "https://www.academiadasapostasbrasil.com/"
    Range("B2").Select
    
        'While Busy
        'Application.Wait TimeSerial(Hour(Now), Minute(Now), Second(Now) + 1)
        'DoEvents:
        'Wend
       
    driver.FindElementByClass("toggle-livescores-menu").Click
    driver.FindElementByXPath("//div[@id='main-container']/div[3]/div[2]/div[3]/div/div[2]/div[3]/div/a[2]/span").Click
    driver.FindElementByClass("toggle-livescores-menu").Click
         
    Application.Wait Now + TimeValue("00:00:05")
     
    Set todosOsLinks = driver.FindElementsByTag("a")
    
     
    
    For Each linkUnico In todosOsLinks
        ActiveCell.Offset(0, 1).Value = linkUnico.Attribute("href")
        ActiveCell.Offset(1, 0).Select
    Next linkUnico
    
    
    Application.ScreenUpdating = True
    Application.Calculation = xlAutomatic

    
End Sub



Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder