Vídeo recomendado
https://youtu.be/diWPPPhW-9E

Web Scraping Excel VBA Sites de Varejo

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.
MatheusBrandao
Acabou de chegar
Acabou de chegar
Mensagens: 1
Registrado em: Ter Out 29, 2019 11:42 pm

Web Scraping Excel VBA Sites de Varejo

Mensagem por MatheusBrandao »

Boa noite a todos,

Estou com uma demanda no trabalho que esta planilha irá ajudar muito, alguem consegue me ajudar?

Preciso de uma planilha Excel onde eu tenha uma tabela onde eu possa preencher o "Site onde eu quero coletar os dados", "o código ou nome do produto que quero pesquisar" e "o CEP onde o produto será entregue" e com isso a tabela iria copiar do site e colar na última célula da planilha o "VALOR EM R$ DO FRETE".

Preciso que eu possa fazer isso com os sites de varejo como Lojas Americanas, Magazine Luiza ou outro qualquer. Preciso que o código possa ser editável de uma forma em que eu possa usar para qualquer site do tipo.

É possível?

Eu cheguei na metade do caminho com um código que consegui montar no VBA, eu consegui fazer o código abrir o Internet Explorer, entrar no site que quero, copiar o dado da célula A2, colar na barra de pesquisa do site e clicar em buscar. Porém não consegui fazer um código que seja possível fazer o restante, que seria clicar no primeiro produto que aparece para abrir a página do produto, colocar o CEP que eu quero, fazer a pesquisa de frete, copiar o valor do frete e colar na planilha do Excel.

Segue abaixo (ainda não terminei o código):

Sub lsPesquisarCEPFaixa()
'Inclui a referência se não houver
lReferenciaIE

Dim ie As InternetExplorer
Dim lNomProd As String
Dim lCodProd As String
Dim lCepProd As String
Dim lUltimaLinhaAtiva As Long
Dim lContador As Long

'Identifica a última célula ativa da lista
lUltimaLinhaAtiva = Worksheets("Plan1").Cells(Worksheets("Plan1").Rows.Count, 1).End(xlUp).Row

'Cria um objeto Internet Explorer
Set ie = New InternetExplorer

'Torna o objeto visível
ie.Visible = True

'Faz um loop por todas as linhas da planilha
For lContador = 2 To lUltimaLinhaAtiva
'Navega ao site dos correios
ie.Navigate "https://www.americanas.com.br/"

'Identifica se a página já foi totalmente carregada
While ie.ReadyState <> READYSTATE_COMPLETE
Wend

'aguardar um tempo, coloquei 3 segundos, alterar conforme a necessidade.
sng = Timer
Do While sng + 3 > Timer
Loop

'Carrega os dados da planilha que serão preenchidos na página do site
lCodProd = Range("A" & lContador).Value
lNomProd = Range("B" & lContador).Text
lCepProd = Range("C" & lContador).Value

'Cola os dados na barra de pesquisa do site

ie.Document.all("h_search-input").Value = lCodProd

'Clica no botão "pesquisar" da barra de pesquisa para realizar a consulta

ie.Document.getElementById("h_search-btn").Click


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
Mikel Silveira Fraga
Jedi
Jedi
Mensagens: 1173
Registrado em: Sex Mai 27, 2011 3:27 pm
Localização: Governador Valadares - MG
Contato:

Re: Web Scraping Excel VBA Sites de Varejo

Mensagem por Mikel Silveira Fraga »

Matheus Brandão, bom dia.

Cara, fazer a operação que deseja é totalmente possível, porém é preciso escrever um código diferente para cada site que deseja realizar a extração. Pelo menos 70% do código, relacionado a estrutura do site, terá que ser reescrito. Em resumo, se hoje tem 4 sites que pesquisa, serão 4 códigos. Se daqui a 3 semanas, quiser acrescentar mais 2 sites, terá que desenvolver códigos adicionais.

Isso ocorre devido estruturas diferentes utilizadas por cada desenvolvedor. Apesar de todos os sites possuírem o campo de pesquisa, os resultados e o campo de frete, os elementos utilizam nomenclaturas diferentes em cada campo.

Caso ainda não tenha encontrado alguém para te auxiliar nesse processo, um cara bom pra isso é o membro daqui do fórum, o Paulinho Monteiro (PRMPOKER). Sempre encontra comentários sobre ele na seção Freelancers e Serviços

Dúvidas, estou a disposição.


Responder