Recuperación de datos del sitio PMU
dadacourse
Mensajes publicados
143
Estado
Miembro
-
dadacourse Mensajes publicados 143 Estado Miembro -
dadacourse Mensajes publicados 143 Estado Miembro -
Hola,
Desde hace varios años, recupero automáticamente los resultados del PMU a través de una macro de Excel utilizando mi navegador IE11.
Este programa abre cada carrera una tras otra, abriendo para cada una el "Tabla de participantes" y luego los "reportes probables" y finalmente "Mostrar todos los reportes".
Un internauta genial y muy simpático (he olvidado su apodo y me disculpo con él) me había escrito un programa para Excel (a continuación la copia).
Hoy, me gustaría cambiar de navegador, Microsoft Edge o Google Chrome (a elección de quien quiera ayudarme), así que reescribir un programa adaptado… lo cual soy incapaz de hacer.
De antemano, les agradezco por cualquier ayuda.
**Modificado por la moderación para una lectura más fácil del código, en el futuro utilicen las etiquetas, VER ESTA PÁGINA
Desde hace varios años, recupero automáticamente los resultados del PMU a través de una macro de Excel utilizando mi navegador IE11.
Este programa abre cada carrera una tras otra, abriendo para cada una el "Tabla de participantes" y luego los "reportes probables" y finalmente "Mostrar todos los reportes".
Un internauta genial y muy simpático (he olvidado su apodo y me disculpo con él) me había escrito un programa para Excel (a continuación la copia).
Hoy, me gustaría cambiar de navegador, Microsoft Edge o Google Chrome (a elección de quien quiera ayudarme), así que reescribir un programa adaptado… lo cual soy incapaz de hacer.
De antemano, les agradezco por cualquier ayuda.
**Modificado por la moderación para una lectura más fácil del código, en el futuro utilicen las etiquetas, VER ESTA PÁGINA
Sub TodosLosReportes() Dim IE As New InternetExplorer Dim IEDoc As HTMLDocument Dim coll_Li As IHTMLElementCollection Dim Li As HTMLGenericElement 'apertura de la página Internet Explorer IE.navigate "https://www.pmu.fr/turf/index.html#19032015/R1/C3" IE.Visible = True 'espera a que la página cargue completamente IE WaitIE IE Application.Wait Time + TimeSerial(0, 0, 2) 'apuntamos al documento de esta página Set IEDoc = IE.document 'espera a que el elemento Documento de la página cargue completamente IE WaitDoc IEDoc Application.Wait Time + TimeSerial(0, 0, 2) 'creamos nuestra colección que contiene todas las etiquetas <li> Set coll_Li = IEDoc.getElementsByTagName("li") 'recorremos todas las etiquetas <li> de nuestra colección For Each Li In coll_Li 'Si la className de la etiqueta <li> es "actionbar-item js-all-report-button" If Li.className = "pari-list-item pari-list-item--all js-all-report-button" Then 'clicamos Li.Click 'saliendo Exit For End If Next End Sub ------------------------------------------------------------------------------------------------------ Sub WaitIE(IE As InternetExplorer) 'espera a que la página cargue completamente IE Do Until IE.ReadyState = READYSTATE_COMPLETE DoEvents Loop End Sub --------------------------------------------------------------------------------------------------- Sub WaitDoc(doc As HTMLDocument) 'espera a que el elemento Documento cargue completamente Do While Not doc.ReadyState = "complete" DoEvents Loop End Sub -------------------------------------------------------------------------------------------------- Sub TodosLosReportes02() ' ' TodosLosReportes02 Macro ' ' Sheets("01 (2)").Select Dim IE As New InternetExplorer Dim IEDoc As HTMLDocument Dim coll_Li As IHTMLElementCollection Dim Li As HTMLGenericElement 'apertura de la página Internet Explorer IE.navigate "" & [AM13].Value IE.Visible = True 'espera a que la página cargue completamente IE WaitIE IE Application.Wait Time + TimeSerial(0, 0, 2) 'apuntamos al documento de esta página Set IEDoc = IE.document 'espera a que el elemento Documento de la página cargue completamente IE WaitDoc IEDoc Application.Wait Time + TimeSerial(0, 0, 2) 'creamos nuestra colección que contiene todas las etiquetas <li> Set coll_Li = IEDoc.getElementsByTagName("li") 'recorremos todas las etiquetas <li> de nuestra colección For Each Li In coll_Li 'Si la className de la etiqueta <li> es "actionbar-item js-all-report-button" If Li.className = "partants actif visible" Then 'clicamos Li.Click 'saliendo Exit For End If Next 'creamos nuestra colección que contiene todas las etiquetas <li> Set coll_i = IEDoc.getElementsByTagName("i") 'recorremos todas las etiquetas <li> de nuestra colección For Each i In coll_i 'Si la className de la etiqueta <li> es "actionbar-item js-all-report-button" If i.className = "icon icon-rapports-probables" Then 'clicamos i.Click 'saliendo Exit For End If Next 'creamos nuestra colección que contiene todas las etiquetas <li> Set coll_Li = IEDoc.getElementsByTagName("li") 'recorremos todas las etiquetas <li> de nuestra colección For Each Li In coll_Li 'Si la className de la etiqueta <li> es "actionbar-item js-all-report-button" If Li.className = "pari-list-item pari-list-item--all js-all-report-button" Then 'clicamos Li.Click 'saliendo Exit For End If Next Set IE = Nothing Application.Wait Time + TimeSerial(0, 0, 3) Application.SendKeys "^a" Application.Wait Now + TimeValue("00:00:01") Application.SendKeys "^c" Application.Wait Now + TimeValue("00:00:01") Application.SendKeys "^w" Windows("Recuperar Web.xlsm").Activate Sheets("01 (2)").Select Range("" & [AM12].Value).Select ActiveSheet.Paste End Sub
Enlaces relacionados:
- VBA Recuperar el nombre del archivo
- recuperar número de línea de la celda activa vba
- ¿Cómo recuperar los datos de las casillas de verificación?
- VBA Excel: copiar un dato de listbox a una celda
- VBA [Excel] Recuperar el dato de un listbox en una fórmula
- Error Administrador de Controladores ODBC Fuente de datos no encontrada
3 respuestas
-
Gracias a la moderación, especialmente a bazfile, por haber facilitado la lectura del código... Buen día a todos.
-
Hola a todos,
Ya han pasado 7 días desde que publiqué mi solicitud de ayuda para un cambio de navegador y todavía no he recibido respuesta.... ¡¡AYUDA!!
Por adelantado, muchas gracias. -
Hola,
Un internauta genial y muy simpático (olvidé su apodo y me disculpo con él) me había escrito un programa para Excel (a continuación la copia).
aquí está tu internauta genial y muy simpático, quizás puedas contactarlo por MP
https://forums.commentcamarche.net/forum/affich-31328488-vba-excel-clic-sur-bouton-page-internet-explorer
para encontrar todas tus publicaciones, haz clic en la fecha en la parte superior izquierda debajo del título a la derecha de datacourse
--
@+ El Pivert