[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