VB.Net Cada navegador se compila de manera diferente en otra máquina
Tenga paciencia conmigo porque esto podría no ser tan estándar como podría pensar. O tal vez lo será. Solo puedo esperar.
He creado una herramienta que utiliza dos navegadores web para leer y comparar datos. Funciona muy bien compilado en mi propia computadora.
Una vez compilado, lo he estado ejecutando en diferentes VPC y VPS y el primero carga los datos y los lee sin problemas. Eso está bien (no hay problemas allí).
Se carga el segundo navegador. Todos los datos están ahí. Pero lo tengo volcando la información en un cuadro de lista, así como en una matriz (igual que el primer navegador y funciona bien para ambos cuando lo estoy ejecutando localmente).
Ambos navegadores funcionan de la misma manera usando:
For Each element As HtmlElement In Me.BROWSERNAME.Document.GetElementsByTagName("span")
Para encontrar las estadísticas que quiere.
No puedo entender por qué un navegador funcionaría y no el otro. Funciona cada vez localmente, pero tan pronto como lo compile y lo coloque en otro lugar, el segundo no leerá.
La única diferencia entre los dos que puedo ver es que uno usa un poco de expresión regular:
readdata = System.Text.RegularExpressions.Regex.Replace(readdata, "[^\d]", " ")
Y una hebra para dividir cada línea.
Dim parts As String() = readdata.Split(New String() {Environment.NewLine},
StringSplitOptions.None)
Entonces, mi única suposición tiene que ser que esto está usando algo que no funciona en los otros sistemas.
Todos los otros sistemas tienen instalado el último .net. He jugueteado con regex para cambiar la configuración de emulación del navegador (para que los navegadores vb.net puedan cargarse, pero hice exactamente lo mismo localmente y funcionó).
Mis importaciones:
Imports System.IO
Imports Microsoft.Win32
Imports System.Threading
Pero supongo que todo esto se incluiría con el marco de compilación o .net. Tal vez ahí es donde me estoy equivocando, pero no sé cómo incluirlos.
Estoy construyendo para "cualquier CPU". Intenté copiar el .exe en los otros sistemas y traté de usar la parte de publicación para instalarlo en el otro sistema con el mismo resultado.
Cualquier consejo sería muy apreciado, me está volviendo loco aquí.
Editar:
Después de algunas pruebas adicionales, parte de la información se lee bien desde el segundo navegador (lo mismo que lo haría localmente). Pero la segunda parte usa el código strgeplit y regex anterior, así que estoy bastante seguro de que es algo que no se va a pasar.