Foros del Web » Programando para Internet » PHP »

Hay manera de eliminar url's duplicados (spider)

Estas en el tema de Hay manera de eliminar url's duplicados (spider) en el foro de PHP en Foros del Web. Tengo una db de url's generado por un spider, ahora quiero elimnar las url's duplicadas y solo quiero que me quede una sola url por ...
  #1 (permalink)  
Antiguo 11/01/2006, 20:04
Avatar de alexis77  
Fecha de Ingreso: diciembre-2003
Mensajes: 119
Antigüedad: 14 años
Puntos: 0
Hay manera de eliminar url's duplicados (spider)

Tengo una db de url's generado por un spider, ahora quiero elimnar las url's duplicadas y solo quiero que me quede una sola url por pagina.

Si tengo un listado de url's como esta

http://tupagina.com/index.php
http://www.tupagina.com/eventos.php
http://www.tupagina.com/noticias/index2.php
http://tupagina.com/recientes.php
http://www.tupagina.com/hola.php


al final solo quedaria.

http://tupagina.com/index.php
  #2 (permalink)  
Antiguo 12/01/2006, 08:34
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Pero el "listado" donde lo tienes? .. en un archivo de texto plano? . .una base de datos? .. un array? .. como?

En función de "donde" tengas esos datos .. así será la mejor solución para quedarte sólo con los "únicos" (no repetidos).

Un saludo,
  #3 (permalink)  
Antiguo 12/01/2006, 09:19
Avatar de alexis77  
Fecha de Ingreso: diciembre-2003
Mensajes: 119
Antigüedad: 14 años
Puntos: 0
En una Base de Datos mysql

  #4 (permalink)  
Antiguo 12/01/2006, 09:29
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Entonces .. usa

SELECT DISTINCT campos FROM tabla

Pero .. se trata de eliminar los links -exactamente igual- (en ese caso usando DISTINCT) ..

Ahora .. como pretendes o bajo que lógica dirías que de un listado como:

http://tupagina.com/index.php
http://www.tupagina.com/eventos.php
http://www.tupagina.com/noticias/index2.php
http://tupagina.com/recientes.php
http://www.tupagina.com/hola.php

se tenga que tomar el primero de la lista .. y por qué no un segundo? .. o sólo el "domino" en sí: tupagina.com ?

En todo caso, en SQL de Mysql tienes posibilidad de usar expresiones regulares (como para indentificar cierto patrón) y funciones SQL de tratamiento de cadena .. que, unido (supongo) con DISTINCT podría ayudarte a solventar el problema.

Yo intentaría enforcar el problema y su solución a usar -sólo- o lo más posible SQL.

Movemos el mensaje al foro de "Base de datos"? (con mención en este foro ..)

Un saludo,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:02.