[R-br] Selecionar e copiar conteúdo de página usando apenas o terminal linux

Leandro Marino leandromarino em leandromarino.com.br
Quarta Abril 30 19:43:39 BRT 2014


Walmes,

nao entendi pq vc nao conseguiu.

Veja o que consegui com o inspect element do google chrome

<tr class=""><td class="o">7</td><td class="rgn"><span class="ui-icon
country flg-br"></span></td><td class="pn"><a class="player-link " title=""
href="/Players/15418">Fred</a></td><td class="pos"
title="Forward">FW</td><td class="age">30</td><td class="hg">185</td><td
class="wg">75</td><td class="ap" title="Total Appearances: 2">2</td><td
class="goals" title="">1</td><td class="assists" title="">2</td><td
class="yellow" title="">-</td><td class="red" title="">-</td><td
class="totalshots" title="Total Shots: 6">3</td><td class="passsuccess"
title="Accurate/Total Passes: 34/45">75.6</td><td class="aerialwon"
title="Won/Total Aerials: 3/10">1.5</td><td class="manofthematch"
title="">-</td><td class="rating sorted" title="">7.19</td></tr>




Em 30 de abril de 2014 19:31, Fernando Mayer <fernandomayer em gmail.com>escreveu:

> Walmes,
>
> outra opção é dar uma olhada no xclip. Algo como
>
> xclip -out -selection clip > <arquivo.txt>
>
> vai colar o conteúdo do clipboard para o arquivo txt. Talvez de para
> eliminar algumas etapas com ele (nunca usei mais do que isso, mas sei que
> ele tem loops também). De uma olhada em
> http://linuxtidbits.wordpress.com/2008/02/22/command-line-to-clipboard/
>
>
>
> ---
> Fernando de Pol Mayer
> Laboratório de Estatística Ambiental - LEA
> Instituto de Matemática, Estatística e Física - IMEF
> Universidade Federal do Rio Grande - FURG
> URL: http://fernandomayer.github.io
> e-mail: fernando.mayer [@] {gmail.com, furg.br}
>
>
> 2014-04-30 19:26 GMT-03:00 Alisson Lucrecio <alissonluc em gmail.com>:
>
> Caro Walmes,
>>
>> Boa noite.
>>
>> Eu tenho um solução com python. Segue o códigos e o scrip que fiz no
>> ipython notebook. Depois vc poderia salvar em csv e rodar a estatística com
>> R.
>>
>> Att.
>>
>>
>> ##--------------------------------------##---------------------------####--------------------------------------##---------------------------####--------------------------------------##---------------------------##
>>
>> from ghost import Ghost
>> from bs4 import BeautifulSoup as bs
>> import regex
>> import pandas
>>
>> page = ghost.open("http://www.whoscored.com/Teams/1232")
>>
>> soup = bs(ghost.content)
>>
>> table = soup.find('tbody', { "id" : "team-squad-stats-summary-content" })
>>
>> players = table.findAll('tr')
>>
>> data_all = {}
>> for player in players:
>>     cols = player.findAll('td')
>>     data = [col.get_text() for col in cols]
>>     data_all[data[2]] = data
>>
>> pandas.DataFrame(data_all).T
>>
>>
>> 01 23 45 67 89 1011 1213 1415 16Biro Biro 12 Biro Biro AM(L)19 16455 0(1)
>> - -- -1 60- -6.47 Bruno Vieira5 Bruno Vieira D(R)28 17869 2- -- -- 85.9
>> 1.5 -7.23 Carlinhos2 Carlinhos D(L)27 17672 2- -- -1 81.11 17.57Chiquinho
>> 17 Chiquinho AM(C)24 17069 -- -- -- -- -- Darío Conca6 Darío Conca M30167
>> 58 2- -1 -3 85.9- -7.21 Diego Cavalieri10 Diego Cavalieri GK31 19186 2- -
>> - -- 46.2- -6.69 Diguinho8 Diguinho DM(C)31 17170 2- -- -0.5 84.71.5 -
>> 7.14 Edwin Valencia13 Edwin Valencia M29 18185 0(2)- -- -- 81.81 -6.31Elivelton
>> 9 Elivelton D21 17981 2- -- -- 74.60.5 -6.86 Felipe16 Felipe GK26 19390 -
>> - -- -- -- -- Fred7 Fred FW30 18575 21 2- -3 75.61.5 -7.19 Gum3 Gum D(C)
>> 28 18986 2- -- -0.5 75.22.5 17.51 Jean11 Jean DM(C)27 17070 2- -- -1 88.6
>> - -6.61 Kenedy18 Kenedy FW18 18277 -- -- -- -- -- Rafael Sóbis1 Rafael
>> Sóbis AM(LR),FW28 17267 22 -- -3.5 78.81.5 -7.82 Rafinha14 Rafinha M(R)20177
>> 74 0(1)- -- -- 50- -6 Wagner4 Wagner AM(C)29 17271 2- -1 -3 90- -7.43Walter
>> 15 Walter FW24 17888 0(1)- -- -- 60- -5.95 Wellington Carvalho19 Wellington
>> Carvalho D21 18584 -- -- -- -- -- Wellington Silva20 Wellington Silva D26177
>> 64 -- -- -- -- --
>>
>>
>> ##--------------------------------------##---------------------------####--------------------------------------##---------------------------####--------------------------------------##---------------------------##
>>
>>
>>
>> 2014-04-30 15:32 GMT-03:00 walmes . <walmeszeviani em gmail.com>:
>>
>>> Saudações,
>>>
>>> Preciso ler os dados de uma página mas da forma tradicional, usando XML
>>> para o exame e retenção dos dados eu não consigo. Os dados são de altura,
>>> idade, peso, enfim, de jogadores de futebol do campeonato brasileiro. Estão
>>> disponíveis nessa página, por exemplo, para o Fluminense
>>>
>>> *http://www.whoscored.com/Teams/1232
>>> <http://www.whoscored.com/Teams/1232>*
>>>
>>> O que me interessa é a tabela com o nome dos jogadores, dados
>>> biométricos e esportivos. Um selecionar e copiar dessa porção que me
>>> interessa traz esse conteúdo.
>>>
>>> R         Name     Pos     Age     cm     kg     Apps     Goal     A
>>> Yel     Red     SpG     PS%     AW     MoM     Rt
>>> 1        Rafael Sóbis    AM(LR),FW    28    172    67    2    2    -
>>> -    -    3.5    78.8    1.5    -    7.82
>>> 2        Carlinhos    D(L)    27    176    72    2    -    -    -
>>> -    1    81.1    1    1    7.57
>>> 3        Gum    D(C)    28    189    86    2    -    -    -    -
>>> 0.5    75.2    2.5    1    7.51
>>> 4        Wagner    AM(C)    29    172    71    2    -    -    1    -
>>> 3    90    -    -    7.43
>>> 5        Bruno Vieira    D(R)    28    178    69    2    -    -    -
>>> -    -    85.9    1.5    -    7.23
>>> 6        Darío Conca    M    30    167    58    2    -    -    1    -
>>> 3    85.9    -    -    7.21
>>> 7        Fred    FW    30    185    75    2    1    2    -    -    3
>>> 75.6    1.5    -    7.19
>>> 8        Diguinho    DM(C)    31    171    70    2    -    -    -
>>> -    0.5    84.7    1.5    -    7.14
>>> 9        Elivelton    D    21    179    81    2    -    -    -    -
>>> -    74.6    0.5    -    6.86
>>> 10        Diego Cavalieri    GK    31    191    86    2    -    -
>>> -    -    -    46.2    -    -    6.69
>>> 11        Jean    DM(C)    27    170    70    2    -    -    -    -
>>> 1    88.6    -    -    6.61
>>> 12        Biro Biro    AM(L)    19    164    55    0(1)    -    -
>>> -    -    1    60    -    -    6.47
>>> 13        Edwin Valencia    M    29    181    85    0(2)    -    -
>>> -    -    -    81.8    1    -    6.31
>>> 14        Rafinha    M(R)    20    177    74    0(1)    -    -    -
>>> -    -    50    -    -    6
>>> 15        Walter    FW    24    178    88    0(1)    -    -    -    -
>>> -    60    -    -    5.95
>>> 16        Felipe    GK    26    193    90    -    -    -    -    -
>>> -    -    -    -    -
>>> 17        Chiquinho    AM(C)    24    170    69    -    -    -    -
>>> -    -    -    -    -    -
>>> 18        Kenedy    FW    18    182    77    -    -    -    -    -
>>> -    -    -    -    -
>>> 19        Wellington Carvalho    D    21    185    84    -    -    -
>>> -    -    -    -    -    -    -
>>> 20        Wellington Silva    D    26    177    64    -    -    -
>>> -    -    -    -    -    -    -
>>>
>>> Quando eu peço o código fonte da página (acesso pelo botão direito do
>>> mouse no navegador firefox), não aparecem esses valores lá. Se aparecessem
>>> dava para usar o XML. Pelo jeito os dados são trazidos por uma consulta à
>>> uma base de dados on the fly para colocar na página. A única forma que eu
>>> sei de pegar é copiando para área de transferência.
>>>
>>> Eu tenho feito assim:
>>> 1. Abro a página de cada time no navegador e dou ctrol+a para selecionar
>>> todo o conteúdo;
>>> 2. Dou ctrol+c para copiar o conteúdo para área de transferência;
>>> 3. Dou control+v dentro de um arquivo texto;
>>> 4. Leio o arquivo texto no R, elimino a sujeira, organizo em colunas até
>>> chegar um data.frame.
>>>
>>> O que eu quero é substituir passos gráficos de 1 à 3 por algum comando
>>> do teminal linux que pudesse pegar a URL que eu passar e salvar o conteúdo
>>> em um aquivo que eu der o nome. Com isso elimino intervenção humana e
>>> rapidamente baixo todos os times, de todos os torneios para ter excelentes
>>> dados para trabalhar em aula. Se alguém se interessar, os dados da liga
>>> européia (56 times) que peguei no braço estão em
>>>
>>> *http://www.leg.ufpr.br/~walmes/data/euro_football_players.txt
>>> <http://www.leg.ufpr.br/~walmes/data/euro_football_players.txt>*
>>>
>>> Dei umas googladas e vi alguns comandos que, infelizmente, ainda não
>>> trazem o que eu preciso, como
>>>
>>> *sudo apt-get install lynx*
>>> *lynx -dump http://www.whoscored.com/Teams/1232
>>> <http://www.whoscored.com/Teams/1232>*
>>>
>>> O recorte do resultado do comando está abaixo.
>>>
>>>    View:
>>>           [41]Overall
>>>           [42]Home
>>>           [43]Away
>>>
>>>    R Name Pos Age cm kg Apps Goal A Yel Red SpG PS% AW MoM Rt
>>> <------ a tabela que eu queria era pra estar
>>>    *Players shaded are players who are not currently active in team.
>>> <------ entre essas duas linhas, mas não.
>>>    (Loaned, sold, etc..)
>>>
>>>    Tournaments:
>>>           [44]Brasileirão
>>>
>>>    View:
>>>           [45]Overall
>>>           [46]Home
>>>           [47]Away
>>>
>>> Caso alguém tenha algum caminho a apontar, fico grato.
>>> Walmes.
>>>
>>>
>>> ==========================================================================
>>> Walmes Marques Zeviani
>>> LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759
>>> W)
>>> Departamento de Estatística - Universidade Federal do Paraná
>>> fone: (+55) 41 3361 3573
>>> skype: walmeszeviani
>>> homepage: http://www.leg.ufpr.br/~walmes
>>> linux user number: 531218
>>>
>>> ==========================================================================
>>>
>>> _______________________________________________
>>> 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.
>>>
>>
>>
>>
>> --
>> Alisson Lucrecio da Costa
>>
>> _______________________________________________
>> 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.
>>
>
>
> _______________________________________________
> 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.
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20140430/a43965d5/attachment.html>


Mais detalhes sobre a lista de discussão R-br