<div dir="ltr"><span style="font-family:arial,sans-serif;font-size:13px">Éder, vacilei geral no uso do argumento! rs</span><br><div><span style="font-family:arial,sans-serif;font-size:13px">Imaginei mesmo que pudessem ter formatos diferentes misturados. Foi últil saber que o enconding na postForm não resolveria nessa situação.</span></div>
<div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px">Obrigado pela dica e por melhorar a saída. </span><span style="font-family:arial,sans-serif;font-size:13px"><br>
</span></div><div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px">abs</span></div><div><span style="font-family:arial,sans-serif;font-size:13px">Paulo</span></div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">Em 9 de junho de 2014 15:11, Éder Comunello <span dir="ltr"><<a href="mailto:comunello.eder@gmail.com" target="_blank">comunello.eder@gmail.com</a>></span> escreveu:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Paulo, boa tarde!</div><div><br></div><div>No código que você postou .encoding não está como um argumento de postForm, mas sim de .params. De qualquer modo, não é útil para o que você deseja, porque é atributo do que se está postando, no caso o código do objeto (<span style="font-family:arial,sans-serif;font-size:13px">"JG310431462BR").</span></div>
<div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px">O encoding que você deseja é do que você está retornando do postForm, sendo assim deve indicar o encoding em htmlParse() ou htmlTreeParse().</span></div>
<div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px">Apesar da indicação da página estar em </span><span style="font-family:arial,sans-serif;font-size:13px">"ISO-8859-1", pelo menos o trecho que retorna o rastreamento está em "UTF-8".</span></div>
<div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><font face="arial, helvetica, sans-serif">Separei o conteúdo da div "ctrlcontent" e li a tabela que havia dentro dela. Preciso estudar melhor o readHTMLTable, mas por ora usei o artifício do gsub() pra melhorar a saída.</font></div>
<div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><font face="courier new, monospace">### <code r></font></div>
<div><font face="courier new, monospace">sapply(c("RCurl", "httr", "XML"), require, character=T)</font></div><div><font face="courier new, monospace">add <- "<a href="http://www2.correios.com.br/sistemas/rastreamento/resultado.cfm" target="_blank">http://www2.correios.com.br/sistemas/rastreamento/resultado.cfm</a>"</font></div>
<div><font face="courier new, monospace">params <- c(objetos="JG310431462BR", btnPesq="Buscar")</font></div><div><font face="courier new, monospace">src <- postForm(add, .params=params)</font></div>
<div><font face="courier new, monospace">tree <- htmlParse(src, encoding = "UTF8")</font></div><div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">div <- xpathSApply(tree, '//div[@class="ctrlcontent"]')</font></div>
<div><font face="courier new, monospace">info <- readHTMLTable(div[[1]], stringsAsFactors = FALSE); info</font></div><div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">sapply(info, function(x) gsub(' \\r', '- ', x))</font></div>
<div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace"># V1 V2 </font></div><div><font face="courier new, monospace"># [1,] "09/06/2014 - 11:39 SAO PAULO / SP" "Objeto saiu para entrega ao destinatário"</font></div>
<div><font face="courier new, monospace"># [2,] "04/06/2014 - 17:06 FOZ DO IGUACU / PR" "Objeto postado"</font></div><div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">### </code></font></div>
<div class="gmail_extra"><br></div><div class="gmail_extra">Espero que ajude...</div><div class="gmail_extra"><br clear="all"><div><div dir="ltr">Éder Comunello <<a href="mailto:comunello.eder@gmail.com" target="_blank">c</a><a href="mailto:omunello.eder@gmail.com" target="_blank">omunello.eder@gmail.com</a>> <br>
Dourados, MS - [22 16.5'S, 54 49'W]<br></div></div>
<br><br><div class="gmail_quote">Em 7 de junho de 2014 13:01, Paulo Nogueira Starzynski <span dir="ltr"><<a href="mailto:paulons@gmail.com" target="_blank">paulons@gmail.com</a>></span> escreveu:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><div class="h5">
<div dir="ltr">Senhores, acho que a questão é simples mas eu me confundo com encodings no R. No exemplo abaixo estou utilizando a função postForm para informar um número de rastreador no site dos correios. Em seguida, utilizo o pacote XML para limpar o código fonte e ficar com o que me interessa, que são os dados da carta em trânsito, desde Foz do Iguacu até minha casa.<div>
<br></div><div>Está funcionando, mas eu gostaria que os acentos estivessem corretos.</div><div>O resultado que obtenho no R é esse:</div><div><span style="border-collapse:separate;color:rgb(0,0,0);font-family:'Ubuntu Mono';font-size:14px;line-height:16px;white-space:pre-wrap;border-spacing:0px;background-color:rgb(225,226,229)"><pre style="font-family:'Ubuntu Mono';outline:none;border:none;word-break:break-all;margin-top:0px;margin-bottom:0px;line-height:1.2;font-size:10.4pt!important;white-space:pre-wrap!important">
[1] "\r04/06/2014 \r17:06 FOZ DO IGUACUÂ /Â PR\r\r\r\r\rObjeto postado \r \r"</pre></span></div><div><br></div><div>Marquei o enconding como "ISO-8859-1" porque é o que aparece no começo do código fonte da página:</div>
<div><span style="font-family:monospace;font-size:medium;white-space:pre-wrap"><meta <span>http-equiv</span>="<span>Content-Type</span>" <span>content</span>="<span>text/html; charset=ISO-8859-1</span>"></span><span style="color:rgb(0,0,0);font-family:monospace;font-size:medium;white-space:pre-wrap">
</span></div><div><br></div><div>Como posso melhorar?</div><div>Segue o código:</div><div><br></div><div><div>require(RCurl)</div><div>require(XML)</div><div><br></div><div>add<-"<a href="http://www2.correios.com.br/sistemas/rastreamento/resultado.cfm" target="_blank">http://www2.correios.com.br/sistemas/rastreamento/resultado.cfm</a>"</div>
<div>src<-postForm(add, .params = c(objetos="JG310431462BR",</div><div> btnPesq="Buscar",</div><div> .enconding="ISO-8859-1"))</div><div><br></div>
<div>tree<-htmlTreeParse(src, useInternalNodes=T)</div><div>xpathSApply(tree, '//table', xmlValue)</div></div><div><br></div><div><br></div><div><br></div><div>Grato,</div><div>Paulo Nogueira Starzynski</div><div>
<br></div></div>
<br></div></div>_______________________________________________<br>
R-br mailing list<br>
<a href="mailto:R-br@listas.c3sl.ufpr.br" target="_blank">R-br@listas.c3sl.ufpr.br</a><br>
<a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
Leia o guia de postagem (<a href="http://www.leg.ufpr.br/r-br-guia" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça código mínimo reproduzível.<br></blockquote></div><br></div></div>
<br>_______________________________________________<br>
R-br mailing list<br>
<a href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a><br>
<a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
Leia o guia de postagem (<a href="http://www.leg.ufpr.br/r-br-guia" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça código mínimo reproduzível.<br></blockquote></div><br></div>