Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

181
Vistas
En XPATH uso '''...y''' para agregar un criterio adicional, en cheerio ¿existe esta opción?

Uso la biblioteca cheeriogs para trabajar en Google App Script:
biblioteca de identificación: 1ReeQ6WO8kKNxoaA_O0XEQ589cIrRvEBA9qcWpNqdOP17i47u6N9M5Xh0

Usando =IMPORTXML('url','xpath') realizo la llamada con este XPATH:

//div[contains(@class,'match-card') and ../../td[@class='score-time ']/a[contains(@href, 'matches')]]

La idea es recopilar los div que contienen @class con la palabra match-card
PERO
necesita tener td vinculado a @class='score-time' y a contiene el @href con la palabra matches

Traté de encontrar una manera de hacer esto con CHEERIOGS pero siempre regresa en blanco, mis intentos fueron:

 $('tr:contains(td.score-time > a[href^="/matches/"]) > div[class^="match-card"]') .each((index, element) => {ss.getRange(index + 2, 2).setValue($(element).text().trim());});
 $('tr td.score-time:contains(a[href^="/matches/"]) > div[class^="match-card"]') .each((index, element) => {ss.getRange(index + 2, 2).setValue($(element).text().trim());});
 $('tr td.score-time > a[href^="/matches/"] > div[class^="match-card"]') .each((index, element) => {ss.getRange(index + 2, 2).setValue($(element).text().trim());});

¿Cómo podría lograr el resultado esperado?

Información adicional a través de solicitudes en los comentarios:

Enlace de ejemplo:

https://int.soccerway.com/national/finland/suomen-cup/20212022/2nd-round/r67751/

El resultado esperado es recopilar los valores en rojo cuando hay enlaces incrustados en azul:

ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

En su situación, ¿qué tal el siguiente script modificado?

Guión modificado:

 const values = []; $("tr.expanded").each((_, element) => { var v1 = $(element).find('span').attr('data-value'); var v2 = $(element).find('td.score-time > a').attr('href'); if (v2) { values.push([Utilities.formatDate(new Date(Number(v1) * 1000), Session.getScriptTimeZone(), "HH:mm"), v2]); } }); console.log(values); // If you want to put the values to the Spreadsheet, please use this. `ss` from your showing script. ss.getRange(2, 2, values.length, values[0].length).setValues(values);

Resultado:

Cuando se ejecuta este script para la URL de https://int.soccerway.com/national/finland/suomen-cup/20212022/2nd-round/r67751/ , se obtiene el siguiente resultado.

 [ ["19:00","/matches/2022/03/27/finland/suomen-cup/oujk/roi-united/3751971/"], ["21:30","/matches/2022/03/27/finland/suomen-cup/puleward-city/tornion-pallo-47/3751969/"], ["07:00","/matches/2022/03/30/finland/suomen-cup/rastaala/valtti/3751935/"], ["07:00","/matches/2022/03/30/finland/suomen-cup/hapk/japs-ii/3751944/"], ["07:00","/matches/2022/03/30/finland/suomen-cup/japs-o35/finland-kumu-junior-team/3751949/"], ["07:00","/matches/2022/03/30/finland/suomen-cup/harjun-potku/sc-riverball/3751963/"], ["07:00","/matches/2022/03/30/finland/suomen-cup/fcs/jyvaskylan-seudun-palloseura/3751965/"], ["07:00","/matches/2022/03/30/finland/suomen-cup/barca/kuopion-elo/3751967/"], ["07:00","/matches/2022/03/30/finland/suomen-cup/pallo-kerho-37/pupa-o35/3751968/"] ]
about 4 years ago · Juan Pablo Isaza Denunciar

0

Ese sería el :tiene pseudo:

 td.day:has(~ td.score-time a[href*="matches"])

Sin embargo, es posible que esto no esté disponible en la versión que está utilizando.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda