Walmes,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/
outra opção é dar uma olhada no xclip. Algo como
xclip -out -selection clip > <arquivo.txt>
---
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@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 Ghostfrom bs4 import BeautifulSoup as bsimport regeximport pandaspage = 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]] = datapandas.DataFrame(data_all).T
01 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Biro Biro 12 Biro Biro AM(L) 19 164 55 0(1) - - - - 1 60 - - 6.47 Bruno Vieira 5 Bruno Vieira D(R) 28 178 69 2 - - - - - 85.9 1.5 - 7.23 Carlinhos 2 Carlinhos D(L) 27 176 72 2 - - - - 1 81.1 1 1 7.57 Chiquinho 17 Chiquinho AM(C) 24 170 69 - - - - - - - - - - Darío Conca 6 Darío Conca M 30 167 58 2 - - 1 - 3 85.9 - - 7.21 Diego Cavalieri 10 Diego Cavalieri GK 31 191 86 2 - - - - - 46.2 - - 6.69 Diguinho 8 Diguinho DM(C) 31 171 70 2 - - - - 0.5 84.7 1.5 - 7.14 Edwin Valencia 13 Edwin Valencia M 29 181 85 0(2) - - - - - 81.8 1 - 6.31 Elivelton 9 Elivelton D 21 179 81 2 - - - - - 74.6 0.5 - 6.86 Felipe 16 Felipe GK 26 193 90 - - - - - - - - - - Fred 7 Fred FW 30 185 75 2 1 2 - - 3 75.6 1.5 - 7.19 Gum 3 Gum D(C) 28 189 86 2 - - - - 0.5 75.2 2.5 1 7.51 Jean 11 Jean DM(C) 27 170 70 2 - - - - 1 88.6 - - 6.61 Kenedy 18 Kenedy FW 18 182 77 - - - - - - - - - - Rafael Sóbis 1 Rafael Sóbis AM(LR),FW 28 172 67 2 2 - - - 3.5 78.8 1.5 - 7.82 Rafinha 14 Rafinha M(R) 20 177 74 0(1) - - - - - 50 - - 6 Wagner 4 Wagner AM(C) 29 172 71 2 - - 1 - 3 90 - - 7.43 Walter 15 Walter FW 24 178 88 0(1) - - - - - 60 - - 5.95 Wellington Carvalho 19 Wellington Carvalho D 21 185 84 - - - - - - - - - - Wellington Silva 20 Wellington Silva D 26 177 64 - - - - - - - - - - ##--------------------------------------##---------------------------####--------------------------------------##---------------------------####--------------------------------------##---------------------------##
2014-04-30 15:32 GMT-03:00 walmes . <walmeszeviani@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/1232O 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.txtDei 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
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]AwayCaso 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@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@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@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.