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

214
Vistas
Crear una matriz de objetos json a partir de bucles for

Estoy intentando extraer valores de un html y luego convertirlos en una matriz json, y hasta ahora he podido obtener lo que quiero, pero solo como cadenas separadas:

Hice dos para bucles:

 for line in games_html.findAll('div', class_="product_score"): score= ("{'Score': %s}" % line.getText(strip=True)) print score for line in games_html.findAll('a'): title= ("{'Title': '%s'}" % line.getText(strip=True)) print title

Que producen estas dos salidas:

 {'Title': 'Uncanny Valley'} {'Title': 'Subject 13'} {'Title': '2Dark'} {'Title': 'Lethal VR'} {'Title': 'Earthlock: Festival of Magic'} {'Title': 'Knee Deep'} {'Title': 'VR Ping Pong'}

y

 {'Score': 73} {'Score': 73} {'Score': 72} {'Score': 72} {'Score': 72} {'Score': 71} {'Score': 71}

(son más largos pero os podéis hacer una idea con esto...)

¿Cómo puedo usar python para crear una matriz json a partir de estos que se vería así:

 [{'Title': 'Uncanny Valley', 'Score': 73}, {....}]

Voy a usar la matriz resultante para hacer otras cosas después....

¿Necesito almacenar los elementos del bucle en listas y luego fusionarlos? ¿Podría ilustrar un ejemplo dado mi escenario?

La ayuda es muy apreciada, esta es una experiencia de aprendizaje realmente genial para mí, ya que solo he usado bash hasta ahora. Python se ve mucho más sexy.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Debe mantener dos listas para puntajes y títulos y agregar todos los datos a esas listas, en lugar de imprimir, y luego zip esas listas junto con la lista de comprensión para obtener el resultado deseado como:

 import json scores, titles = [], [] for line in games_html.findAll('div', class_="product_score"): scores.append(line.getText(strip=True)) for line in games_html.findAll('a'): titles.append(line.getText(strip=True)) score_titles = [{"Title": t, "Score": s} for t, s in zip(titles, scores)] print score_titles # Printing in JSON format print json.dumps(score_titles)
over 4 years ago · Santiago Trujillo 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