3 maneiras de escrever um servidor com Python

Índice:

3 maneiras de escrever um servidor com Python
3 maneiras de escrever um servidor com Python

Vídeo: 3 maneiras de escrever um servidor com Python

Vídeo: 3 maneiras de escrever um servidor com Python
Vídeo: #03 - Outlook 2016 - Crie sua assinatura de email com imagem 2024, Marcha
Anonim

Criar um servidor do zero é uma grande tarefa. No entanto, isso pode melhorar muito suas habilidades de programação e permitir que você as modifique de acordo com suas necessidades. Este tutorial usará python e programação de soquete de baixo nível para criar um servidor para que os clientes possam se comunicar uns com os outros. Isso também cobrirá apenas o processo no Windows. Algumas informações serão fornecidas nas instruções, mas se você quiser apenas o código, está fornecido nas figuras. (Nota: as instruções apresentadas aqui são apenas o básico).

Passos

Método 1 de 3: Instalando Python

Escreva um servidor com Python, etapa 1
Escreva um servidor com Python, etapa 1

Etapa 1. Baixe Python

Acesse o site principal do python e baixe o Python 2.7.10. Após o download, execute as etapas do instalador Python com as configurações padrão. Este link é fornecido aqui

Escreva um servidor com Python, etapa 2
Escreva um servidor com Python, etapa 2

Etapa 2. Execute o IDLE (GUI do Python)

Vá para a pasta Python 2.7 e execute IDLE (Python GUI), python agora deve estar no menu iniciar onde o IDLE está localizado.

Escreva um servidor com Python, etapa 3
Escreva um servidor com Python, etapa 3

Etapa 3. Crie um novo arquivo

Vá para Arquivo no canto superior esquerdo da janela recém-aberta e selecione Novo arquivo, você deve ter uma janela em branco aberta com o título Sem título.

Método 2 de 3: Criando o servidor

Escreva um servidor com Python, etapa 4
Escreva um servidor com Python, etapa 4

Etapa 1. Importe os módulos necessários

Os dois módulos necessários para este código são “socket” e “threading”. Isso pode ser feito digitando na primeira linha “from socket import *” e na próxima linha “import threading”.

Escreva um servidor com Python, etapa 5
Escreva um servidor com Python, etapa 5

Etapa 2. Crie um novo tópico

Isso irá lidar com a correspondência de 2 clientes entre si. Threads são processos que podem ser executados enquanto o programa principal é executado. Digite exatamente como mostra a figura. Isso configurará as variáveis no encadeamento para que possam ser chamadas posteriormente.

Escreva um servidor com Python, etapa 6
Escreva um servidor com Python, etapa 6

Etapa 3. Criar processo de thread

Para que os clientes se comuniquem diretamente, é necessário enviar informações uns aos outros, que incluem o endereço IP e a porta que estão usando. Para fazer isso você deve criar um objeto socket que pode ser feito com “variableName = socket (AF_NET, SOCK_DGRAM)”. Isso criará um objeto de soquete que usa o protocolo UDP. Próximo Ligue o soquete ao seu endereço IP com um certo número de porta com “roomSocket.bind (('', self.port))” A área em branco representa o seu próprio endereço IP do PC dentro da sua rede local e self.port atribui o número da porta que está incluído quando você chama este segmento. A última coisa que você tem a fazer com esse soquete é enviar informações por meio dele. Como este é um soquete UDP, você simplesmente deve saber o IP e a porta do computador para o qual está enviando informações, a sintaxe de envio é “socketName.sendto (IP, porta)"

Escreva um servidor com Python, etapa 7
Escreva um servidor com Python, etapa 7

Etapa 4. Crie as variáveis globais

Para esta etapa, você precisará definir várias variáveis, que incluem uma lista de usuários, números de portas, contagem de clientes, clientes para o encadeamento e o ID do quarto. Você também precisará criar um soquete para que seu servidor possa interagir com a internet. Isso é feito criando um novo objeto de soquete e vinculando-o ao seu endereço IP com um determinado número de porta. (O número da porta pode ser qualquer coisa, mas geralmente é algo alto para evitar que outro processo o use ou use números de porta reservados.)

Escreva um servidor com Python, etapa 8
Escreva um servidor com Python, etapa 8

Etapa 5. Crie o processo do servidor principal

Isso levará o endereço do cliente e também iniciará o thread criado anteriormente. Isso inclui esperar para receber dados do buffer e obter o endereço do cliente e salvá-lo para ser usado no thread. A maneira de obter informações de seu soquete é chamar por “socketName.recvfrom (1024)”, o número aqui é apenas a quantidade de bytes que é lida por vez. Neste exemplo, estamos armazenando-o em uma variável chamada userAddr e, quando isso acontecer, você pode salvar esse endereço na lista que foi criada na etapa 4. A instrução if criará um thread de sala se duas pessoas se conectarem e só criará uma sala quando duas conexões diferentes acontecem.

Escreva um servidor com Python, etapa 9
Escreva um servidor com Python, etapa 9

Etapa 6. Salve seu trabalho

Isso deve ser feito em um diretório de fácil acesso para que possa ser acessado facilmente para teste.

Método 3 de 3: teste

Escreva um servidor com Python, etapa 10
Escreva um servidor com Python, etapa 10

Etapa 1. Crie um cliente de teste

Este é um cliente muito básico que só controlará se o servidor enviou ou não as informações do outro cliente para o cliente atual. Observe que, ao contrário do código do servidor, este código requer um nome de servidor. Se você estiver executando tudo isso em um computador, o nome do servidor deve ser o nome do seu PC. Você pode descobrir o nome do seu computador clicando com o botão direito em Meu Computador e indo para Propriedades.

Escreva um servidor com Python, etapa 11
Escreva um servidor com Python, etapa 11

Etapa 2. Salve seu trabalho

Deve estar no mesmo diretório do código do servidor.

Escreva um servidor com Python, etapa 12
Escreva um servidor com Python, etapa 12

Etapa 3. Abra três janelas de comando diferentes

Vá ao menu iniciar e na barra de pesquisa digite “cmd” e pressione Enter. Faça isso três vezes. As janelas devem ser assim.

Escreva um servidor com Python Etapa 13
Escreva um servidor com Python Etapa 13

Etapa 4. Execute os programas

Você terá que digitar o caminho exato ao usar a janela de comando. Você precisará executar o código do servidor primeiro em uma janela de comando e, em seguida, o código do cliente de teste nas outras duas. Se tudo deu certo você receberá alguma coisa dessas mensagens em sua janela.

Avisos

  • Este programa só funcionará ao executá-lo e testar clientes na mesma rede local.
  • Python 2.7.10 está desatualizado e está chegando ao fim de seu suporte. Para continuar criando bons servidores, é recomendado que a versão mais recente do Python 3 seja instalada.

Recomendado: