Estimados colegas, 

Soy nuevo en uso de R. Requiero por ello amablemente de su ayuda. Estoy
realizando una captación de datos de una página web html de comentarios
turísticos relativos a 10 hoteles. El código que parcialmente empleo es
el siguiente: 

(...) 

for (i in seq_len(10)){

txt <- getURL(url=baseURL[i], followlocation = TRUE, encoding="UTF-8")
# parse html
text <- htmlParse(txt, asText=TRUE)

t1 <- xpathApply(text, "//span[@class='hotel_name']")
t2 <- xpathApply(text, "//ul[@class='guest_list']")
t3 <- xpathApply(text, "//DIV[@CLASS='REVIEW']") 

o1 <- sapply(t1, function(x)unname(xmlSApply(x, xmlValue)))
o2 <- sapply(t2, function(x)unname(xmlSApply(x, xmlValue)))
o3 <- sapply(t3, function(x)unname(xmlSApply(x, xmlValue)))

ot.t <- cbind(o1,o2,o3) 

(...) 

} 

El problema surge porque dentro de la etiqueta //DIV[@CLASS='REVIEW']
existen dos subapartados: 

-comentarios positivos (<p class="POS">). 

-comentarios negativos (<p class="NEG">). 

código fuente aclaratorio: 

<div class="REVIEW">
<p class="POS">La amabilidad</p><p class="NEG">La bañera</p>
</div> 

Le señalo además que cuando no hay comentarios positivos o negativos el
código fuente html no muestra <p class="pos"> o <p class="neg">. Ahí
está la clave del problema. El huésped no siempre deja mensajes
positivos o negativos, de tal modo que cuando ejecuto la programación
que barre el código html, me desordena los comentarios realizados entre
huéspedes. Es decir, si el huésped 2 no realiza comentarios negativos y
el huésped 3 sí, los comentarios negativos del huésped 3 los asigna al
huésped 2. 

En suma, necesitaría que me orientase para que en caso de ausencia de
comentarios positivos o negativos asignara un valor (NA) al huésped 2 en
cada tipo de comentario (positivo o negativo) ausente. 

Espero su amable respuesta, 

Manuel 

-- 
_______________________________________________________

Manuel J. Sánchez Franco
Departamento de Administración de Empresas y Marketing
Facultad de Ciencias Económicas y Empresariales 
Universidad de Sevilla 
Avda. Ramón y Cajal, 1. 41018-SEVILLA (ESPAÑA) 
Tf.- 95 455 75 42. Fax.- 95 455 69 89
 
        [[alternative HTML version deleted]]

_______________________________________________
R-help-es mailing list
[email protected]
https://stat.ethz.ch/mailman/listinfo/r-help-es

Responder a