[R-br] Tratar código HTML no R
Henrique Dallazuanna
wwwhsd em gmail.com
Segunda Novembro 28 21:47:13 BRST 2011
Paulo,
Você pode fazer uso do XPATH do pacote XML:
Lines <- '<div id="individual-completo">
<div class="title-box">
<img src="http://address.jpg" gestor="foto" class="foto" />
<div>
<div class="colright">
<span>Participações: 22</span>
<a href="http://players" class="visite">Saiba Mais</a>
</div>
<h2>NomeElemento</h2>
<p class="tflag"><img src="http://team" /> <a
href="/refteam">NomeGrupo</a></p>
<p>NomeFunção</p>
</div>
</div>
<div class="content-box">
<h2>Desempenho completo</h2>
<table cellspacing="0" cellpadding="0">
<tbody>
<tr>
<th>Parâmetro1</th>
<td><span gestor="param1">2</span></td>
</tr>
<tr class="divisor">
<td colspan="2"> </td>
</tr>
<tr>
<th>Parâmetro2</th>
<td><span gestor="param2">63</span></td>
</tr>
<tr class="odd">
<th>Parâmetro3</th>
<td><span gestor="param3">87</span></td>
</tr>
<tr class="divisor">
<td colspan="2"> </td>
</tr>
<tr class="destaque">
</tbody>
</table>
</div>
</div>'
h <- htmlTreeParse(Lines, useInternalNodes = TRUE)
matrix(xpathApply(h, "//th|//td//span", xmlValue), ncol = 2, byrow = TRUE)
2011/11/27 Paulo Nogueira <paulons em gmail.com>
> Saudações a todos!
>
> Preciso aprender como tratar HTML no R para identificar alguns padrões na
> estrutura do código, extrair e guardar determinadas informações.
> Alguém costuma fazer algo do tipo e poderia informar os pacotes mais
> indicados para esse trabalho?
>
> Terei de acessar cerca de 300 páginas semanalmente, e extrais alguns
> parâmetros.
> O HTML abaixo é um trecho do código que terei de lidar, e preciso extrair
> as informações destacadas.
>
> Alguém pode me sugerir o início do caminho das pedras, como algum pacote
> e/ou funções específicas?
>
> <div id="individual-completo">
> <div class="title-box">
> <img src="http://address.jpg" gestor="foto" class="foto" />
> <div>
> <div class="colright">
> <span>Participações: 22</span>
> <a href="http://players" class="visite">Saiba Mais</a>
> </div>
> <h2>NomeElemento</h2>
> <p class="tflag"><img src="http://team" /> <a href="/refteam">
> NomeGrupo</a></p>
> <p>NomeFunção</p>
> </div>
> </div>
> <div class="content-box">
> <h2>Desempenho completo</h2>
> <table cellspacing="0" cellpadding="0">
> <tbody>
>
> <tr>
> <th>Parâmetro1</th>
> <td><span gestor="param1">2</span></td>
> </tr>
> <tr class="divisor">
> <td colspan="2"> </td>
> </tr>
>
> <tr>
> <th>Parâmetro2</th>
> <td><span gestor="param2">63</span></td>
> </tr>
>
> <tr class="odd">
> <th>Parâmetro3</th>
> <td><span gestor="param3">87</span></td>
> </tr>
> <tr class="divisor">
> <td colspan="2"> </td>
> </tr>
> <tr class="destaque">
>
> </tbody>
> </table>
> </div>
> </div>
>
> Obrigado
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
> código mínimo reproduzível.
>
--
Henrique Dallazuanna
Curitiba-Paraná-Brasil
25° 25' 40" S 49° 16' 22" O
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20111128/af1bd558/attachment.html>
Mais detalhes sobre a lista de discussão R-br