elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Foros Generales
| |-+  Dudas Generales (Moderador: engel lex)
| | |-+  ¿Cómo elimino lo extra de una lista que quiero copiar?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Cómo elimino lo extra de una lista que quiero copiar?  (Leído 3,686 veces)
Tachikomaia


Desconectado Desconectado

Mensajes: 1.651


Hackentifiko!


Ver Perfil
¿Cómo elimino lo extra de una lista que quiero copiar?
« en: 14 Septiembre 2025, 20:56 pm »

https://www.nintendolife.com/games/browse?sort=score&system=nes&genre=action

Quisiera copiar los nombres de los juegos, pero al ir arrastrando el mouse para copiar la lista entera, se copian más cosas.

De lo que se me ocurre lo mejor me parece pegarlo en Excel (de hecho lo quiero ahí) y cada X filas (donde aparezca lo que quiero copiar) poner un número en otra columna, luego ordenar por ese número. El problema es que quizá haya casos en que los juegos estén más abajo o más arriba, o sea que haya distintas filas de diferencia. Busco un método más seguro.


En línea

EdePC
Moderador Global
***
Desconectado Desconectado

Mensajes: 2.250



Ver Perfil
Re: ¿Cómo elimino lo extra de una lista que quiero copiar?
« Respuesta #1 en: 15 Septiembre 2025, 08:52 am »

mmm... aparte también está el problema de que las X filas varían XD, creo que lo más fácil es abrir la Consola del Navegador y pegar un Script que extraiga los textos que quieres

Código
  1. var span = document.querySelectorAll("#listing-games span.title")
  2. var txt = ""
  3. for (var el of span) txt += el.textContent + "\n"
  4. console.log(txt)

1. Guarda en la variable span todos los elementos que coincidan con el Selector especificado, en este caso todos los Elementos "span" que tengan la Clase "title" y que estén dentro del Elemento con Id "listing-games"

2. Crea una variable para ir guardando todos los textos de manera legible

3. Un bucle FOR OF que sirve para recorrer cada elemento de la lista de elementos de la línea 1, recoge el contenido de texto del elemento dado y lo guarda en "txt" junto a un salto de línea

4. Imprime el contenido de la variable "txt"



Para entender todo lo anterior requieres javascript + HTML DOM, otra forma más fácil sería usar un programa especializado en extracción de datos muy amigable, por ejemplo PowerBI, las nuevas versiones son horrendamente pesadas y obviamente no serán compatibles con Windows 7, si mal no recuerdo las nuevas versiones de Excel también pueden extraer datos de páginas web pero me parece que tampoco está a tu disposición XD.

Pienso que una versión viejita de PowerBI que justo acabo de probar en un Windows 7 virtual te puede servir, espero que tengas tu Windows 7 actualizado o PowerBI te va a dar problemas, aunque te avisa si falta algo o puedes comentar por acá si manda algún error



Power BI 2.83.5894.961 32-bit julio de 2020
https://web.archive.org/web/20210310063750_/https://download.microsoft.com/download/8/8/0/880BCA75-79DD-466A-927D-1ABF1F5454B0/PBIDesktopSetup-2020-12.exe


Si te pide Internet Explorer 9 mejor instalas el 11, porque yo grabé el video con el 9 y no se ve muy bonita la interfaz, luego probé con el 11 y si se ve mejor, me refiero a esto:



IE 11 para Windows 7 de 32-bit
https://www.microsoft.com/es-ES/download/details.aspx?id=40902

IE 11 para Windows 7 de 64-bit
https://www.microsoft.com/es-ES/download/details.aspx?id=40901


« Última modificación: 15 Septiembre 2025, 16:23 pm por EdePC » En línea

Mr.Byte


Desconectado Desconectado

Mensajes: 380



Ver Perfil
Re: ¿Cómo elimino lo extra de una lista que quiero copiar?
« Respuesta #2 en: 15 Septiembre 2025, 16:21 pm »

Hazlo por IA, yo he utilizado Copilot:
Citar
🎮 Mejores juegos de acción para NES
Puntuación 10/10

Super Mario Bros. 3

Mega Man 2

Puntuación 9/10


Mega Man 3

Castlevania III: Dracula's Curse

Super Mario Bros.

Puntuación 8/10


Blazing Rangers

EarthBound Beginnings

The Mysterious Murasame Castle

Kirby's Adventure

Mega Man 4

Mega Man 5

Gargoyle's Quest II: The Demon Darkness

S.C.A.T.: Special Cybernetic Attack Team

Ninja Gaiden II: The Dark Sword of Chaos

Little Ninja Brothers

Ninja Gaiden

Super Mario Bros. 2

Blaster Master

Castlevania

BurgerTime

Duck Hunt

Puntuación 7/10

VS. Excitebike

Mega Man 6

Ninja Gaiden III: The Ancient Ship of Doom

Shadow of the Ninja

Super C

Mega Man

Adventure Island

Ghosts 'n Goblins

Puntuación 6/10

Flying Warriors

Mappy-Land

Kung-Fu Heroes

Kid Icarus

Puntuación 5/10

Pac-Land

Flying Dragon: The Secret Scroll

The Adventures of Bayou Billy

Rampage

Puntuación 3/10

Spelunker

Teenage Mutant Ninja Turtles

Puntuación 1/10

Fester's Quest

Además, hay otros títulos sin puntuación visible como:

Little Samson

Kick Master

Vice: Project Doom

Power Blade 2

Star Wars: The Empire Strikes Back

The Young Indiana Jones Chronicles

The Garbage Pail Kids: Mad Mike and the Quest for Stale Gum
« Última modificación: 15 Septiembre 2025, 16:24 pm por Mr.Byte » En línea

Danielㅤ


Desconectado Desconectado

Mensajes: 1.915


🔵🔵🔵🔵🔵🔵🔵


Ver Perfil
Re: ¿Cómo elimino lo extra de una lista que quiero copiar?
« Respuesta #3 en: 16 Septiembre 2025, 00:04 am »

Hola, eso para mí era muy fácil lograr, he tenido mucha experiencia en hacer ese tipo de cosas en mis años activo de programador, es decir en extracción específica de datos.
Actualmente no tengo una PC para programar un código en Python pero básicamente el código sería así:

Código
  1. html = """
  2. Aquí todo el código html de la página web
  3. """
  4. nombresJuegos = html.split('<span class="title accent-hover">')[1].split('</span>')[0]
  5. print(nombresJuegos)

Ese código debería imprimir todos los nombres de los juegos, independientemente si son nombres de varias palabras, mostrará en pantalla todos los nombres de los juegos en una lista, lo único que faltaría por hacer -que no me acuerdo como lograrlo- es pasar esa lista a un string donde los nombres estén uno abajo del otro, seria como hacer un splitlines(), por ejemplo:

Adventure Island
Rampage
Power Blade 2
Super Mario Bros. 3

y guardar esos datos en un archivo txt.

Por favor que algún compañero pueda terminar, probar y compartir el código final, se lo agradezco desde ya.


Saludos
« Última modificación: 16 Septiembre 2025, 00:10 am por Danielㅤ » En línea

EdePC
Moderador Global
***
Desconectado Desconectado

Mensajes: 2.250



Ver Perfil
Re: ¿Cómo elimino lo extra de una lista que quiero copiar?
« Respuesta #4 en: 18 Septiembre 2025, 01:30 am »

No soy muy amigo de Python pero siempre es bueno ejercitarse un poco:

Código
  1. import urllib.request
  2. import re
  3. import os
  4.  
  5. url = 'https://www.nintendolife.com/games/browse?sort=score&system=nes&genre=action'
  6.  
  7. with urllib.request.urlopen(url) as response :
  8.  html = response.read().decode()
  9.  
  10. games = re.findall('<ul class="items cols-4 style-cover">(.*)<nav class="ui-listing-pagination">', html, re.DOTALL)
  11. games = re.findall('<span class="title accent-hover">(.*?)</span>', games[0])
  12.  
  13. with open(os.environ['USERPROFILE'] + '\\Desktop\\games.txt', 'w') as file :
  14.  file.write('\n'.join(games))

Ese código crea en el escritorio un archivo de texto con la lista de juegos, uso dos veces la expresión regular (re) porque a la derecha hay otra lista pero que no entra en el criterio solicitado
En línea

Danielㅤ


Desconectado Desconectado

Mensajes: 1.915


🔵🔵🔵🔵🔵🔵🔵


Ver Perfil
Re: ¿Cómo elimino lo extra de una lista que quiero copiar?
« Respuesta #5 en: 18 Septiembre 2025, 02:51 am »

Bien, gracias compañero EdePC por el código, sólo agregar que hay que tener un poco de cuidado al ejecutar ese script porque el mismo crea un archivo de texto (txt) en el Escritorio con el nombre games.txt en el caso de que ese archivo no exista, pero si llegaría a existir (que puede darse el caso porque el nombre "games" es muy genérico) lo sobre escribirá, es decir que va a borrar todo el contenido del archivo y en su lugar va a escribir la lista de los nombres de los juegos, habría que hacer una comprobación en el código de que si ese archivo existe, entonces que no lo sobre escriba y lo informe por la consola de Windows.
En línea

Tachikomaia


Desconectado Desconectado

Mensajes: 1.651


Hackentifiko!


Ver Perfil
Re: ¿Cómo elimino lo extra de una lista que quiero copiar?
« Respuesta #6 en: 18 Septiembre 2025, 03:39 am »

Por ahora sólo probé el método simple de EdePC, me sirvió.

Aclaro que esa página no es muy completa que digamos.

Me hago mucho lío con los juegos, busco juegos simples, así que miro por año de lanzamiento, pero no son tan simples o fáciles, y algunos son horribles o no de mi gusto.
Otra cosa que hago es mirar los mejores de cada género, pero como las listas puede que estén incompletas...
Esta es mejor por si a alguien le interesa:
https://www.mobygames.com/game/platform:nes/sort:date/page:1/
Copiar es más fácil, sólo se selecciona todo, se copia, se pega, y usando Reemplazar se elimina una palabra que tienen delante.
En línea

Tachikomaia


Desconectado Desconectado

Mensajes: 1.651


Hackentifiko!


Ver Perfil
Re: ¿Cómo elimino lo extra de una lista que quiero copiar?
« Respuesta #7 en: 3 Octubre 2025, 18:43 pm »

Hazlo por IA, yo he utilizado Copilot:
Por curiosidad y quizá para otro caso (pues este ya se resolvió): ¿Cuales son los pasos a seguir? O sea, yo uso GPT en Poe y Deepseek ¿sirven? ¿les doy el link y lo hacen?
En línea

Danielㅤ


Desconectado Desconectado

Mensajes: 1.915


🔵🔵🔵🔵🔵🔵🔵


Ver Perfil
Re: ¿Cómo elimino lo extra de una lista que quiero copiar?
« Respuesta #8 en: 3 Octubre 2025, 22:39 pm »

Por curiosidad y quizá para otro caso (pues este ya se resolvió): ¿Cuales son los pasos a seguir? O sea, yo uso GPT en Poe y Deepseek ¿sirven? ¿les doy el link y lo hacen?

Además del link tenés que darle a la IA el patrón de búsqueda, es decir la regex que debería utilizar para obtener solamente los nombres de los juegos.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
nada mas quiero saber como copiar un original
Software
machi_maxi 3 3,174 Último mensaje 14 Abril 2003, 00:13 am
por Ap0caLiPse
Copiar lista de contactos msn « 1 2 »
Programación Visual Basic
krosty_ufc 18 11,408 Último mensaje 29 Septiembre 2007, 22:00 pm
por nhaalclkiemr
Noticias de ayer...extra extra! ♫
Foro Libre
El Che Guevara 0 2,347 Último mensaje 19 Marzo 2015, 04:10 am
por El Che Guevara
Como? Copiar archivos a partir de una lista generada.
Scripting
walewein 1 3,987 Último mensaje 30 Septiembre 2018, 10:30 am
por OmarHack
Quiero copiar un archivo a la carpeta de inicio de Windows con Batch
Scripting
Wolfgang1305 2 5,273 Último mensaje 2 Noviembre 2021, 14:51 pm
por Serapis
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines