Novamente venho contar com o auxílio de vocês, por gentileza.
Estou tentando criar um sisteminha no VBA, usando o Selenium, para capturar registros de hotéis em várias cidades do Brasil.
O código consegue acessar o site, informar a cidade que eu quero e capturar as informações necessárias, porém quando a cidade não tem hotéis registrados, o código dá erro, naturalmente. Entretanto, não consigo criar um IF para pular para próxima consulta.
O site que estou trabalhando é http://www.hotelinsite.com.br/cidades.asp?1742
Observe que quando a cidade não tem registro a <div class="avisos"> aparece a seguinte mensagem:"Para a combinação dos termos pesquisados não encontramos nenhum hotel. Deseja refazer a busca somente com".
Como o campo é um texto, não estou conseguindo fazer com que o IF torne verdadeiro quando esse campo não é vazio (not empty).
Não consigo anexar a planilha aqui, então, para testar o código coloquem os seguintes códigos na "Plan2" a partir da A2
5655
347
1742
Por favor, me ajudem!!!
Código: Selecionar todos
Public Sub ExtracaoDados()
Dim selenium As New SeleniumWrapper.WebDriver
Dim cidade As String
Dim Lin As Long
Lin = 2
'Rodar enquanto tiver códigos de cidades prenchidas
Do While Sheets("Plan2").Cells(Lin, 1) <> ""
'Código da Cidade
cidade = Sheets("Plan2").Cells(Lin, 1)
'Abrir chorme e ir para o site
selenium.Start "chrome", "http://www.hotelinsite.com.br"
selenium.Open "resultado.asp?" & cidade
'Se o campo "avisos" tiver alguma coisa preenchida, não tem resultado. Portanto, deve-se passar para próxima cidade
If selenium.findElementByClassName("avisos").Text = "" Then GoTo nextLinha
'Quadro de aviso se essa cidade mesmo; Sempre que aparece essa mensagem não há resultado disponível
'MsgBox selenium.findElementByClassName("avisos").Text
'Captura a quantidade de hotéis na cidade para a Plan2
Sheets("Plan2").Cells(Lin, 2) = selenium.findElementByClassName("interno").findElementByTagName("p").findElementByClassName("total").Text
Lin = Lin + 1
GoTo nextLinha
nextLinha: 'Referência pra próxima linha.
Lin = Lin + 1
selenium.stop
Loop
selenium.stop
End Sub