Ative o servidor web Python com uma linha de comando

O Python tem um módulo servidor web/http que pode ser ativado a qualquer momento, com uma única linha de comando.
Com ele é possível disponibilizar arquivos locais, através da porta 8000.
Veja como:


python3 -m http.server

Serving HTTP on 0.0.0.0 port 8000 ...
127.0.0.1 - - [23/May/2017 11:13:56] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [23/May/2017 11:13:57] code 404, message File not found
127.0.0.1 - - [23/May/2017 11:13:57] "GET /favicon.ico HTTP/1.1" 404 -
127.0.0.1 - - [23/May/2017 11:13:57] code 404, message File not found
127.0.0.1 - - [23/May/2017 11:13:57] "GET /favicon.ico HTTP/1.1" 404 -
127.0.0.1 - - [23/May/2017 11:15:11] "GET / HTTP/1.1" 200 -

No Python 2.7, o nome do módulo é SimpleHTTPServer:


python2.7 -m SimpleHTTPServer

Preste atenção na caixa das letras.
Para testar, abra o seu navegador e vá para o endereço http://localhost:8000 ou http://127.0.0.1:8000.

janela do navegador exibindo o servidor web do Pyhton.
Servidor web do Python.

Se você não tiver um arquivo index.html, no seu diretório pessoal, todos os arquivos presentes nele serão listados.
O módulo vai servir sempre os arquivos do diretório atual. Portanto, basta executá-lo no local em que se encontram os arquivos que você deseja compartilhar na rede.
Enquanto o servidor estiver no ar, o terminal, onde ele foi executado, ficará sendo alterado — refletindo o andamento do serviço.
Para finalizar o servidor, tecle ‘Ctrl+c’ no console.
python web http server
O terminal, com o servidor em execução, irá exibir informações básicas sobre o seu funcionamento — como os erros 404, os GET e PUSH, endereços IP etc.
É semelhante a rodar o tail em um arquivo de log do Apache.

Por que usar o servidor HTTP embutido no Python?

Uma das vantagens de usar o recurso é que você não precisa instalar ou configurar qualquer coisa para ter um servidor web — semelhante ao Apache — rodando.
Instalações Linux costumam vir com o Python já instalado. Comumente, elas veem com as versões 2.x e 3.x simultaneamente instaladas e prontas para rodar. Ou seja, é menos trabalho ainda.
É uma forma de disponibilizar arquivos de um dos seus diretórios na rede rapidamente, sem configurar nada. Quando não quiser compartilhar mais… tecle ‘Ctrl+c’.

Assinar blog por e-mail

Digite seu endereço de e-mail para assinar este blog e receber notificações de novas publicações por e-mail.

Junte-se a 49 outros assinantes

Interpretadores online para Python

Estudantes de programação nem sempre têm à sua disposição todas as ferramentas necessárias para praticar seu aprendizado.

Por sorte, com uma conexão à Internet, é possível continuar as lições, mesmo usando o computador dos outros.

No site oficial da fundação Python Software Foundation é possível usar uma shell online, com uma versão atual do Python.

Para chegar lá, clique no link: https://www.python.org/shell/.
Há vários outros interpretadores e compiladores Python online.
Leia este artigo para conhecer outros:
https://elias.praciano.com/2016/12/6-compiladores-online-para-estudantes-de-programacao/.

Python Anywhere

O site Python Anywhere, que provê o console Python da PSF, também tem um: https://www.pythonanywhere.com/try-ipython/.

A shell online do SymPy também vale a tentativa: http://live.sympy.org/. Neste caso, a última vez em que visitei o site, eles usavam o interpretador da versão 2.7 da linguagem, sem opção para a série 3.x.

Code Skulptor

O site CodeSkulptor provê uma interface web simples, porém bem funcional.

Nele, você pode escrever seu código e conta com bibliotecas avançadas, como a pygame.

A ferramenta pode ser encontrada aqui: http://www.codeskulptor.org/

Um servidor virtual online também pode ser útil

Uma experiência mais completa, pode ser obtida com o https://termbox.io, que permite simular uma máquina com Linux (com várias opções de distribuições) e dentro desta máquina virtual, rodar o seu interpretador Python.

Infelizmente, o site estava fora do ar em algumas de minhas tentativas de acessar.

Você tem outra sugestão de interpretador ou shell online para Python?! Então, deixe sua sugestão nos comentários!

Assinar blog por e-mail

Digite seu endereço de e-mail para assinar este blog e receber notificações de novas publicações por e-mail.

Junte-se a 49 outros assinantes