es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Desaparece el valor del array de findelementsbyclassname.

Sub problema()
   Dim cd As WebDriver
   Dim ele As WebElement

   Dim dataArr(400, 3) As String
   Dim xpathstring As String

   Dim i, j, k, m, templow As Long
   Dim trcnt As String

   Set cd = New WebDriver
   cd.AddArgument "headless"
   cd.Start "chrome"
   cd.Wait 1000

   cd.Get "http://data.krx.co.kr/contents/MDC/MAIN/main/index.cmd"
   cd.Wait 500

   cd.FindElementByXPath("/html/body/div[2]/section[1]/div[1]/div[1]/input").SendKeys ("3S")
   cd.Wait 500

   cd.FindElementByXPath("/html/body/div[2]/section[1]/div[1]/div[1]/button/img").Click
   cd.Wait 500

   cd.FindElementByXPath("/html/body/div[2]/section[2]/section/section/div/div/div[1]/div[1]/h4[1]/a/span").Click
   cd.Wait 500

   cd.FindElementByXPath("/html/body/div[2]/section[2]/section/section/div/div/form/div[1]/div/table/tbody/tr[2]/td/div/div/button[4]").Click

   cd.FindElementByXPath("/html/body/div[2]/section[2]/section/section/div/div/form/div[1]/div/table/tbody/tr[2]/td/a").Click
   cd.Wait 500

   xpathstring = "/html/body/div[2]/section[2]/section/section/div/div[2]/div[1]/div[1]/div[1]/div[2]/div/div/table/tbody"
   j = 1

   trcnt = 1
   For Each ele In cd.FindElementsByClass("CI-GRID-EVEN")
        dataArr(j, 1) = ele.FindElementByXPath("" + xpathstring + "/tr[" + trcnt + "]/td[1]").Text
        dataArr(j, 2) = ele.FindElementByXPath("" + xpathstring + "/tr[" + trcnt + "]/td[5]").Text
        dataArr(j, 3) = ele.FindElementByXPath("" + xpathstring + "/tr[" + trcnt + "]/td[2]").Text
        Debug.Print dataArr(j, 1); dataArr(j, 2); dataArr(j, 3); trcnt; j
        j = j + 1
        trcnt = trcnt + 2
   Next ele
End Sub

Los valores del arreglo “dataArr” hasta el décimo lugar son normales, pero no hay ningún valor desde el undécimo lugar en adelante. Los valores de “trcnt” y “j” se imprimen normalmente, y el número de elementos del arreglo es 63. ¿Dónde están los valores del undécimo al sexagésimo tercer lugar? ¡Ayúdame!

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Es difícil determinar dónde se está produciendo el problema sin más información, pero aquí hay algunas cosas a tener en cuenta:

    • Asegúrese de que el sitio web al que se accede tenga datos en las ubicaciones esperadas para todas las filas a las que se accede. Si los datos no están en la ubicación esperada, es posible que el código los esté saltando.
    • Verifique la condición del bucle y asegúrese de que esté iterando correctamente a través de todos los elementos deseados. Si la condición del bucle es incorrecta, es posible que el código salga del bucle demasiado pronto.
    • Considere agregar manejo de errores al código para capturar cualquier error que pueda estar ocurriendo. Esto puede ayudar a identificar dónde se está produciendo el problema y proporcionar más información para depurar.

    Sin ver el sitio web real o los datos a los que se accede, es difícil brindar una respuesta más específica.

Comments are closed.