Arquitectura de un Crawler para Extraer las Estructuras y

Anuncio
!
# $
%!!
(
*
*
$
!
!
+
&'
)
$
!)
,
+
-
2$
+
*
*
/
!
!
.
0+
,
*
*
1
3
!
$
* +
= !
/
$
*
$ 4
!"
$
5
"
+
/
6;8 ,
$
$
/
*
!
5 * >
!
*
*
,
5
/
!
$
:
!
,*
"
3
!
* 3
*
!)
! 5
678698
*
+
(
*
*
*
*
!
"
$
"
:
!/
!
$<
5 *
!
-
=
:
+
!
!
<
*
$
:
!
5
*
!
(
!
+
/
:
$
* :
*
"
9
$
>
!
)
=
5
+
!
:?
"
3 ; 6;8 +
!
-
*
$
) 0 @? 698 >
(?,
*
" !
>
6;86A8
)
:
,
)
/ !
)
-
"
"
*
*
*
*
"!
<
"
*
6B8
#
+
"
3
$
"
$
=
-
*
+
*
!
* 3
6C8 ,
!
* +
-
+
>
+
/
+
5
!
!
+
*
"
0
!
/
!
$
"
*
+
! 5
(
/
*
(
,
+
*
"
+
*
"
*
!
"
,
-
"
+ D
/
!
<
-
-
!
*
$
/ )
6E86F8 2
* +
<
+
"
*
-
!
*
$
$
"
!
G
3
H
,
+
!
+
$
,
*
$
*
-
* A
GH
)
!
$ *
*
/
*
+
+
* ;
$
*
"
+
!
I
$
+
* 9
+
+
* > =
!
I
G H
<
"
!
/
*
;
$
5
!
*
=
5
*
)
>
*
*
/
*
*
3
<
)
*
"
5
!
"
+
=
*
* +
)
$
,
I
/ )
"
#
$
0
* #
*
!
=
!
!
!
)
/
5
- )
!
+
!
<
5
"
+
=
5
>
=
<
5
$
<
*
!
-
+
!/
<
=+
!
/
+
3
,
=
*
2$
+
Semillas <- {Referencias Iniciales}
MIENTRAS Semillas.NoVacia() HACER
refS <- Semillas.PrimerElemento()
refS.Descarga()
refNs <- refS.Referencias()
MIENTRAS refNs.NoVacia() HACER
refN<-refNs.PrimerElemento()
SI EsNoticia(refN) ENTONCES
refN.Descarga()
refN.Clasifica()
FIN SI
refNs = refNs - {refN}
FIN MIENTRAS
Semillas = Semillas - {refS}
FIN MIENTRAS
<
$
- H
>
G/
K
/
*
*
L2
>
G,-
> *
6J8 +
!
H
!
/
+ /
!
$
*
$
+
− ,
I
*
!
=
− #
!
!
"
)
3
+
*
,
"
+
*
!
$
!
/
$
+
I
*
!
+
$
+
+
A
− ,
/
#
−
$
*
" !
+
*
+
<
*
− ,
$
$
+
$ +
$
−
!
G
$ /
$
H
*
"-
5
$
*
#
*
!
2
"
I
,
=
*
*
3
,
5 *
)
*
I7H
!
!
M9H
*
>
=+
$
"
/
>
$
!
!
+
-
-
5
!
"
"
+
(
:
(
3
$
!
*
0O 0 6798 +
/
$
"
+
<
5 $
,
!
+
+
? , 67N8 0 02,# 6778
!
#
!
,
*
+
)!
5
$
-
<
!
/
$
-
$
*
"
* !
!
$ *
* ,
I
!5
+
+
5
+
+
B
!
2$
*
! ,-
/
4
*
:
1
>
,
Semillas <- {Referencias Iniciales}
MIENTRAS Semillas.NoVacia() HACER
ref <- Semillas.PrimerElemento()
ref.Descarga()
refNs <- ref.Referencias()
MIENTRAS refNs.NoVacia() HACER
refN<-refNs.PrimerElemento()
SI EsInterior(refN) ENTONCES
Semillas = Semillas + {refN}
FIN SI
SI EsHoja(refN) ENTONCES
refN.Descarga()
refN.Procesa()
FIN SI
refNs = refNs - {refN}
FIN MIENTRAS
Semillas = Semillas - {ref}
FIN MIENTRAS
+
3
1 /
3 K! 1
!
#
"
!
"
3
*
%
!/
>
!/
* #
5
* +
,
!
/
*
$
:
!
5 *
$
!
5 *
!/
/
,
&
5
*
!/
*
!/
,
!
$
$
!
*
!
5
!/
:
$
+
/
Q
/
RS
/ 0
- ST
Q,
4 K RS/ I..111 !
Q#
T / I..111 !
!.
Q /
T IU U0
U /U
Q
T A Q. TQ
T; Q.
TQ0
Q.,
4 KT
Q,
4 K RS/ I..111 !
Q#
T/ I..111 !
!.
Q /
T IU U0
U /U
Q
TA Q. TQ
T; Q.
TQ0
Q.,
4 KT
Q.
!.
.
.
.
7C 779 /
Q. /
T9 NN9 Q.0
T
!.
.
.
.
7C 77; /
Q. /
T9 NN9 Q.0
T
.
.
.
Q.#
ST
T
T
.
.
Q.#
.
ST
T
T
/ T
*,
%
./0
%
5
"
"
$
*-
"
*
*
#
+
!
"
"
*
*
$
<
()
*+ >
5
'
=
5
P
*
!
,
!
<
* +
"
C
0 +
!
5
!
"
:
+
!
<
/
4
!
,
*
<
+
!5
*
)
! 7R 6
!
#$
R 6V0
RW
W
!
RW/ I.
.111
RW, > $ $
"
VW0
W8
.9NN9. W
W 8M
!
Q0
T
Q0
T0
Q.0
T
Q0
T0
Q.0
T
Q
T
Q.
T
Q
T, > $ $
Q.
T
Q !
T/ I..
111
.
9NN9. Q. !
T
Q.0
%*
+
)
"
I
5
*
!
#
$
0
+
$
"
* - )
%
$
$
*
*
*
$<
!
$
!
$
/
5
=
*
)
<
)
I
*
/
*
-
!
+
!
!
$
' (
$
$
+
+
,
=
&
!
"
&
*
,
!
$
$
!
*
!
5
*
T
1
+
,
>
-
"
!
*
!
/
!
$
$
*
I
+
+ /
*
+
!
* ,
!
!
-
*
* - )
!
+
!
E
- )
$ " !
!
)
$
* ,
<
!
!
/
&
/
<
2
/
!
+
!
$
*
!
*
=
"
<
-
$
*
$
$
!
!/
=
*
"
"
/
* ,
*
5
!
$
2
*
*
)
>
2$
5
>
) !
I
+
# $5
*
*
"
$
$
5
$
!
+
!
*
)
!
(
2$
>
,-
*
*
)
*"
L
L2
*
X
*
3
&
#
!
&
,
+
5
!
3
-
)!
I
*
$ /
+
/
!
/ )
=
<
0 +
+
!
+
*
"
*
-
*
>
- )
"
,
!
+
)
0
3
+
/
F
0 !
0O 06798 +
+
+
+
3
"
+
*
*
!
+
+
5
+
5
5
</
!
"
"
+
(
+
5 *
$
:
,
"
* + +
!
"
3
*
I
*
4
$
!
"
<
5
<-
+
5
"
- )
"
"
+
"
#
"
3
"
-
$ >R # GV/ I
..111
$
, G>W WH
>
G / !HM
M
( *#
2
? ,67N8 0 02,# 6778
+
5
.
+
/ WHM
+
5
)
4 ,
3
4
,
+
// Funciones recolectoras de información.
var Autores = defun(obj,HTML)
.... // Código extracción.
end;
var Titulo = defun(obj,HTML)
.... // Código extracción.
end;
var Resumen = defun(obj,HTML)
.... // Código extracción.
end;
... ...
export var Constructor = fun(HTML)
// Recopilación de los datos.
var datos = Autores([..],HTML);
datos = Titulo(datos,HTML);
datos = Resumen(datos,HTML);
datos = Contenido(datos,HTML);
datos = FechaSuceso(datos,HTML);
datos = Localizacion(datos,HTML);
return datos;
end;
' *-
0
#
+
+
J
##
$
)
#
)
-
- )
,
"
+
*
!
*
$<
/
4
*
, ,
)
"
%
5
* $
* >
+
$
!
%
*
=
=
!
*
5
$
=
)
3 K! 1
1
4 ,
/
>
3
>
)6
2 /
+
$
$
+
+
5
!
=
-
!
$
+
*
+
/
+
!
-
$
*
0
4
,
+
+
)
−
I
*
"
:
*
− ,
*
!
5
− 0
3
5
!
*
!
!
+
$
!
*
$
%
,
*
$ +
*
7N
− ,
+
3
"
-
"
!
!
+
!"
*
*
>
I
−
*
$
−
-
*
!
* 3
*
=
"
5
−
)
5 *
*
$)
* !
$
3
$
-
+
*
*
*
!
!
"
+
<!
-
*
$
$
)
+
-
$
$
+
>
5
5
!
&
7
4
L
Y
(
?
S/
3
!/
1/ / !
$ 1 L !
1 K
S
9NN7 /
3
! 0
9 2
2
/
K
!
K
<5
3
K
0
V
3
1 / > < <L9NNNW
! # $
9NN7 ,,,
; 3; 3
3
3
I% '7
7
& 7
A >
L0
/
V
WI% '77 8 9
:
7; %
7 :
7
B
$ I/ I
..
.
C0
I% '7
7
7
7
7 #%
E >
/
> L(
/
0 / V 1 I0
! ( /> !
3
/ ,
W # $
!
#
L /
# 0 B/
!
0
9NN7
F
/
Y(
Y
0
( /
Y
3
V
/
3
3
3
0 !
/0
/WO 1 0
>
/
J (
V
+Z 3
0 >
! / 3 W
+
/
G
H
7N
I% '7
7 :
7 7
77 0
'% '77
7
7 #%
79 0K I/ I
..111
.
[
-.0O 0.
? .K \/
/
3
Descargar