quarta-feira, 15 de maio de 2013

WebServer para compartilhamento de arquivos em Python

Essa é uma dica rápida e simples. Sabe aquele momento que você tem um arquivo na sua máquina Linux e quer transferir para um amigo e vem toda aquela complicação de configuração do Samba, compartilhamento de pastas, permissões e que no final você acaba desistindo porque acaba não dando certo? 

Ou então envia por e-mail que é "mais fácil", o que acaba tendo que fazer upload do seu arquivo para depois o amigo fazer o download ainda. Isso se o arquivo não for tão grande que o e-mail não consiga enviar


Enfim, até hoje não encontrei uma forma mais fácil de compartilhar um arquivo do que essa que mostrarei aqui.
O que acontece é que você cria uma página web na pasta que você está no momento e qualquer pessoa na rede pode acessá-la pelo navegador, não importando se é Linux, Windows, BSD, Mac, iOS, Android, Windows Phone ou qualquer outro sistema operacional.



Sem mais delongas, abra o terminal e navegue até a pasta que possui o arquivo que você quer transferir. Vamos usar como exemplo que você quer enviar o arquivo planilha_gastos_financeiros.xls que está na pasta /home/usuario/planilhas

cd /home/usuario/planilhas

Depois execute o comando:

python -m SimpleHTTPServer 8080

Pronto, aparecerá a mensagem "Serving HTTP on 0.0.0 port 8080..."

Basta que o seu amigo abra o navegador e acesse o endereço da sua máquina na porta 8080. Vamos dizer que o endereço da sua máquina é 192.168.0.100, então ele digitará no navegador:

http://192.168.0.100:8080