A pedagogia do Marcelo está muito acima do que se encontra no mercado. E este é mais um exemplo. Quem quiser aprender realmente com metodologia veja o curso dele.
agora eu entendo o porque é necessário paralisar o desenvolvimento de uma linguagem, se o VBA continuasse a evoluir diariamente seria um pareo duro de mais para o surgimento de novas linguagens e todo o comércio que esse surgimento propicia. VBA ainda é muito contemporâneo e mágico na mão do Alquimista da programação o Mestre Nascimento. Parabéns!!!
Cara.. essa dica foi matadora.. amanhã mesmo vou tentar aplicar no meu trabalho pq preciso pegar os preços de uns produtos no mercado livre. Pensei que ia ter que fazer isso com Python, mas a sua dica chegou em ótima hora. Super obrigado por compartilhar. 😎
Nascimento, sua didática é boa demais. Aqui já deu certo pegar os dados do ML, apenas nome e preço. Se vc puder, nos ensinar por favor, como pegar o link do texto. Exemplo: no ML tem o nome do produto e um link e tô precisado além do nome e do preço, pegar o link no mesmo elemento Nome, mas não estou acertando. Desde já muito obrigado.
Opa Mauricio, entao, você pode usar o método "getAttribute". Por exemplo: Dim linkElement As Object Set linkElement = html.getElementsByClassName("text-muted")(0) ' Ajuste o índice conforme necessário Dim link As String link = linkElement.getAttribute("href")
@@DevNascimento Havia perguntado la em cima mas encontrei aqui a resposta. Não entendi sobre o ajuste do índice. Deu tudo certo, mas pegar o link ainda não. COpiei exatamente como o exemplo que você fez. Não sei nada de programação, vendo seu vídeo fiz igualzinho e ficou top !!!
Eu ainda não conhecia esta forma de fazer webscraping. Interessante a abordagem. Fiz o teste e achei estranho que alguns dos itens não são extraídos. Continuo estudando para ver se descubro o motivo de pular alguns itens.
Fantástico!! Simples rapido e objetivo. Grato d+ Até demorei um pouco para conseguir ajustar aqui rsrs, mas no fim deu certo e ainda consegui fazer algumas melhorias para minha realidade.. Só não consegui ainda migrar este cod para as pesquisas google, teria algum material? Mas desde já vlw
Obrigado por compartilhar seu conhecimento, me ajudou muito, fiz e deu tudo certo. Porém ainda preciso do link do anúncio, ou pelo menos que a informação na planilha traga o link ou hiperlink em uma das células, para que eu consiga visitar o anúncio posteriormente. Como faço para consegui extrair a informação do link? Por exemplo, esse link que está em ( href)
Muito bom o conteúdo. Eu gostaria de saber se existe aplicabilidade desse método para automação de pesquisa em uma página. Trabalho com pesquisas de registros de medicamentos no site da anvisa, teria uma maneira de automatizar essas pesquisas e salvar o arquivo em pdf?
Gostei demais da explicação. Parabéns. Estou procurando ajuda para fazer o contrário, preciso inserir um valor em um campo HTML. Por exemplo, tenho o seguinte form: E preciso usar o VBA para preencher esse campo. Como faria?
No site que quero extrair os dados as classes ficam alterando o nome, só tem atributos data-id, como trabalha capturando eles para selecionar o elemento?
O site que eu quero extrair os dados não atualiza a URL quando eu mudo a pagina da lista, como posso fazer nesse caso? Outra coisa é que nessa lista, cada elemento possui imagens associadas a ele, mas só consigo vê-las quando eu clico no elemento, que ai redireciona para outra pagina, tem como capturar as imagens de cada elemento?
Se eu não definir a quantidade de paginas? ele fica em loop até ler todas as paginas disponiveis, pq vai ter paginas que esse numero de paginas pode variar, exemplo: essa semana a na pagina teve 5 paginas, mas na outra senaa apareceu 8 paginas.... eu não defino o numero de paginas ??? qual a solução ?
Marcelo, desculpa minha falta de informacao... mas fiquei em duvida na parte do HEADER. Voce disse que poderia ser qualquer um, mas eu não sei o que isso faz e pra que serve. Eu não uso mozila no computador, tem problema fazer igual vc fez? Se quisesse usasr Chrome no lugar, como ficaria?
Primeiro tem que informar de onde virá a informação do telefone: Set tel = html.getElementsByClassName("botao loga-class ver-tel") e dentro do loop onde vai salvar a informação e como ela será coletada pl.Cells(uLin + 1, 3).Value = tel.Item(j).getAttribute("data-telefone"). Repare que foi adicionado o atributo data-telefone, pois o número do telefone está dentro deste atributo. Se não indicar o atributo não consegue extrair o número do telefone.
Cara fiz igualzinho você e o meu da "erro 91, não encontrado bloco with ou variavel', isso se dá quando um dos elementos não é encontrado, então nessa linha "http.Open "GET", url, False" o código não acha a variável, mas se colar a o endereço no navegador abre a pagina. Não consegui resolver.
Na verdade seria bom dar uma olhada se não existe algum atributo que referencie a quantidade de páginas máximas, para deixar dinâmico. Sem ficar dinâmico as páginas fica meio incompleto a proposta
o meu esta dando erro nessa linha "Dim html As New MSHTML.HTMLDocument " a mensagem é "ERRO DE COMPILAÇÃO - O TIPO DEFINIDO PELO USUÁRIO, NÃO FOI DEFINIDO" sou iniciante no projeto, alguém consegue me ajudar
Precisa entrar em Ferramentas e depois em referências para habilitar o Microsoft XML, v 6.0 e Microsoft HTML Object Library conforme mostra a partir deste trecho do vídeo 2:12.
@@DevNascimento é um site interno da empresa onde eu trabalho, ao entrar ele não exige senha, acredito que deva usar as credenciais do windows. Mas vc acha que seria possível? E tem uma outra coisa que acontece, quando entramos nesse site, precisamos inserir o código do pdf que precisa baixar, clicar em um determinado link que irá abrir uma nova aba e depois que podemos obter o acesso a um botão que faz o download do arquivo.
boas, to precisando de alguém para fazer esse serviço pra mim e depois filtrar os dados com um filtro de diferença de valor, tudo automático para uso diário. Alguém se abilita ?
A pedagogia do Marcelo está muito acima do que se encontra no mercado. E este é mais um exemplo. Quem quiser aprender realmente com metodologia veja o curso dele.
agora eu entendo o porque é necessário paralisar o desenvolvimento de uma linguagem, se o VBA continuasse a evoluir diariamente seria um pareo duro de mais para o surgimento de novas linguagens e todo o comércio que esse surgimento propicia. VBA ainda é muito contemporâneo e mágico na mão do Alquimista da programação o Mestre Nascimento. Parabéns!!!
Tem muita coisa boa!
Marcelo,
Dentro de todos os devs em VBA, você é o melhor e sua didática e talento são incríveis. Meus parabéns!
Valeu Samuel 🤝
Cara.. essa dica foi matadora.. amanhã mesmo vou tentar aplicar no meu trabalho pq preciso pegar os preços de uns produtos no mercado livre. Pensei que ia ter que fazer isso com Python, mas a sua dica chegou em ótima hora.
Super obrigado por compartilhar.
😎
Ótimo conteúdo como sempre, valeu Nascimento.
Grande Marcelo. Como sempre conteúdo de primeiríssima qualidade. Sucesso!!
Nascimento, sua didática é boa demais. Aqui já deu certo pegar os dados do ML, apenas nome e preço.
Se vc puder, nos ensinar por favor, como pegar o link do texto. Exemplo: no ML tem o nome do produto e um link e tô precisado além do nome e do preço, pegar o link no mesmo elemento Nome, mas não estou acertando.
Desde já muito obrigado.
Opa Mauricio, entao, você pode usar o método "getAttribute".
Por exemplo:
Dim linkElement As Object
Set linkElement = html.getElementsByClassName("text-muted")(0) ' Ajuste o índice conforme necessário
Dim link As String
link = linkElement.getAttribute("href")
Deu certo, amigo. Muito obrigado. Mandou bemzasso. Abraço e mais uma vez, muito obrigado. @@DevNascimento
@@DevNascimento Havia perguntado la em cima mas encontrei aqui a resposta. Não entendi sobre o ajuste do índice. Deu tudo certo, mas pegar o link ainda não. COpiei exatamente como o exemplo que você fez. Não sei nada de programação, vendo seu vídeo fiz igualzinho e ficou top !!!
muito bom! Cria mais vídeos com esse proposito amigo!
Sempre um conteúdo muito limpo e bem explicado!
Chapado! Parece magia!
Conteúdo top. Obrigado por compartilhar.
parabéns
pelo trabalho adorei
Show Nascimento... Muito bom...
O brabo do VBA
Eu ainda não conhecia esta forma de fazer webscraping. Interessante a abordagem. Fiz o teste e achei estranho que alguns dos itens não são extraídos. Continuo estudando para ver se descubro o motivo de pular alguns itens.
Grande aula meu amigo. Bom demais.
🤯 top demais! 👏🏻👏🏻👏🏻
Não tenho duvida nenhuma muito legal como sempre, só queria resolver o problema do menu que o botão não funciona
Fantástico!!
Simples rapido e objetivo.
Grato d+
Até demorei um pouco para conseguir ajustar aqui rsrs, mas no fim deu certo e ainda consegui fazer algumas melhorias para minha realidade..
Só não consegui ainda migrar este cod para as pesquisas google, teria algum material?
Mas desde já vlw
Achei maneiro! vlw, tem algum vídeo que explica como inserir texto na página? seguindo seu exemplo, eu preencher a busca com dados da planilha?
Excelente.. só uma duvida daria para usar o Chrome ou somente mozilla ?
fiquei com essa dúvida tbm
Obrigado por compartilhar seu conhecimento, me ajudou muito, fiz e deu tudo certo. Porém ainda preciso do link do anúncio, ou pelo menos que a informação na planilha traga o link ou hiperlink em uma das células, para que eu consiga visitar o anúncio posteriormente. Como faço para consegui extrair a informação do link? Por exemplo, esse link que está em ( href)
Muito bom o conteúdo. Eu gostaria de saber se existe aplicabilidade desse método para automação de pesquisa em uma página. Trabalho com pesquisas de registros de medicamentos no site da anvisa, teria uma maneira de automatizar essas pesquisas e salvar o arquivo em pdf?
Gostei demais da explicação. Parabéns. Estou procurando ajuda para fazer o contrário, preciso inserir um valor em um campo HTML. Por exemplo, tenho o seguinte form:
E preciso usar o VBA para preencher esse campo. Como faria?
no meu esta dando erro no script quando vou em por dados da web
Excelente!
Porra muito bom. E agora esse mesmo conceito consegue usar ora raspar dados de 10 paginas denuma vez por exemplo?
No site que quero extrair os dados as classes ficam alterando o nome, só tem atributos data-id, como trabalha capturando eles para selecionar o elemento?
O site que eu quero extrair os dados não atualiza a URL quando eu mudo a pagina da lista, como posso fazer nesse caso?
Outra coisa é que nessa lista, cada elemento possui imagens associadas a ele, mas só consigo vê-las quando eu clico no elemento, que ai redireciona para outra pagina, tem como capturar as imagens de cada elemento?
Se eu não definir a quantidade de paginas? ele fica em loop até ler todas as paginas disponiveis, pq vai ter paginas que esse numero de paginas pode variar, exemplo: essa semana a na pagina teve 5 paginas, mas na outra senaa apareceu 8 paginas.... eu não defino o numero de paginas ??? qual a solução ?
Preciso pegar dados de um site onde só aparece as informações quando estou logado, isso é possível?
Tem a planilha p disponibilizar
Como eu faria pra rodar no Edge?
Da pra fazer isso na casa dos dados
Marcelo, desculpa minha falta de informacao... mas fiquei em duvida na parte do HEADER. Voce disse que poderia ser qualquer um, mas eu não sei o que isso faz e pra que serve. Eu não uso mozila no computador, tem problema fazer igual vc fez? Se quisesse usasr Chrome no lugar, como ficaria?
Oi Paulo, na verdade esse método não diferencia o navegador que você usa, ele sempre pegará o navegador padrão do seu sistema
@@DevNascimento ok, mto obrigado por esclarecer.
olá tem como baixar a imagem dos produtos que apearecem na pagina do site? e sendo 5 sites diferentes?
Tem sim, basta capturar o link das imagens e inserir dentro da função imagem
muito top sua explicação, tentei aqui porem nao funcionou pro que eu queria se tiver algum meio de contato email agradeço
nao consigo fazer com a coluna do telefone Te
Primeiro tem que informar de onde virá a informação do telefone: Set tel = html.getElementsByClassName("botao loga-class ver-tel") e dentro do loop onde vai salvar a informação e como ela será coletada pl.Cells(uLin + 1, 3).Value = tel.Item(j).getAttribute("data-telefone"). Repare que foi adicionado o atributo data-telefone, pois o número do telefone está dentro deste atributo. Se não indicar o atributo não consegue extrair o número do telefone.
Cara fiz igualzinho você e o meu da "erro 91, não encontrado bloco with ou variavel', isso se dá quando um dos elementos não é encontrado, então nessa linha "http.Open "GET", url, False" o código não acha a variável, mas se colar a o endereço no navegador abre a pagina. Não consegui resolver.
Observe se você colocou as barras invertidas.
Na verdade seria bom dar uma olhada se não existe algum atributo que referencie a quantidade de páginas máximas, para deixar dinâmico.
Sem ficar dinâmico as páginas fica meio incompleto a proposta
Claro que existe Rafael, tem tudo no meu curso de VBA 🤝
o meu esta dando erro nessa linha "Dim html As New MSHTML.HTMLDocument " a mensagem é "ERRO DE COMPILAÇÃO - O TIPO DEFINIDO PELO USUÁRIO, NÃO FOI DEFINIDO" sou iniciante no projeto, alguém consegue me ajudar
Precisa entrar em Ferramentas e depois em referências para habilitar o Microsoft XML, v 6.0 e Microsoft HTML Object Library conforme mostra a partir deste trecho do vídeo 2:12.
No meu não deu certo 😢
Marcelo, seria possível baixar um arquivo pdf utilizando essa metodologia?
Qual seria o site ?
@@DevNascimento é um site interno da empresa onde eu trabalho, ao entrar ele não exige senha, acredito que deva usar as credenciais do windows. Mas vc acha que seria possível? E tem uma outra coisa que acontece, quando entramos nesse site, precisamos inserir o código do pdf que precisa baixar, clicar em um determinado link que irá abrir uma nova aba e depois que podemos obter o acesso a um botão que faz o download do arquivo.
@@DevNascimento então a ideia era ter uma lista dos códigos dos arquivos pdf que precisam ser baixados. E depois fazer um loop baixando um por um.
@@cleitonalves2875 Acredito que somente usando Selenium
@@DevNascimento entendi, ok Muito obrigado
boas, to precisando de alguém para fazer esse serviço pra mim e depois filtrar os dados com um filtro de diferença de valor, tudo automático para uso diário. Alguém se abilita ?
Já resolveu? Tá precisando do serviço ainda?
@@euricolemos9527 to precisando ainda
Cara me ensina a deixar o VBE parecendo o visual studio code pelo amor de Deus kkkkkkk, eu trabalho com vba e quase fico cego com a telona branca
Tem um vídeo aqui no canal ensinando, basta entrar no canal e pesquisar por "Como mudar a cor de fundo do editor VBA"
@@DevNascimento achei aqui mano, infelizmente a alcoa não permite que eu mexa nas pastas, mas vou usar no meu computador pessoal kkkkkk valeu!
Explica bem, mas muito rapido, é preciso ficar voltando várias vezes o video para entender e acompanhar
Boa noite Brendo. Você pode reduzir a velocidade do vídeo, você encontrará essa opção no botão que fica no canto inferior esquerdo do vídeo