Af_inet é o primeiro argumento, enquanto Sock_stream seria o próximo. AF_INET representa a família de endereço IPv4. Em contraste com o IPv6 para o AF INET6, AF INET refere -se ao ramo ou reino. A comunicação TCP orientada para a conexão é chamada de Sock_stream. Neste artigo, daremos uma olhada no uso do parâmetro AF_INET na programação de soquete de python dentro da ferramenta Spyder.”
Exemplo 1
Temos iniciado o primeiro exemplo deste artigo para criar uma conexão segura entre o soquete e o servidor host. Para isso, estamos importando o módulo de soquete de Python na primeira linha e o módulo "SYS" na segunda linha usando a palavra -chave "importar". Depois disso, estamos utilizando o conceito de manuseio de exceção usando a declaração Try-Except de Python duas vezes neste código.
Em primeiro lugar, a declaração de tentativa foi criar um novo soquete "S" usando a função "soquete" de um módulo de soquete em Python com seus dois parâmetros, AF_INET e SOCK_STREAM. O AF_INET mostra que o soquete usará a família IPv4, e o Sock_Str EAM foi usado para utilizar o protocolo TCP para o fluxo de conexão. A função de impressão está usando a frase simples para imprimir no console da ferramenta Spyder para exibir que a criação do soquete foi realizada.
Se a tentativa de obter o endereço IP for bem -sucedido, a cláusula da declaração é ignorada e o código restante será executado de acordo. A declaração exceto foi usada para exibir o erro no console se a criação de um soquete foi usada sem sucesso o soquete.objeto de erro e salvá -lo para variável "e". Após a declaração Try-exceto (), inicializamos o número da porta "P" a 80 para o soquete, I.e., A porta padrão da conexão de soquete com um servidor da web é 80. O próximo passo é resolver o host e conectar o soquete com ele usando o endereço IP do host.
Para isso, estamos utilizando a declaração "Try-Except" mais uma vez no código Python. A declaração de tentativa foi iniciada com o uso da função GethostByName () do módulo de soquete, que tem usado o URL do Google para obter seu "IP" e salvá -lo na variável do quadril. Se o endereço IP tiver sido encontrado com sucesso, ele não executará a declaração, exceto e continuará executando as próximas linhas de código. Caso contrário, se a declaração exceto obtiver o "Gaierror" do módulo de soquete, ele usará a declaração de impressão para exibir que não podemos resolver o IP de um host, e o módulo "SYS" será usado para chamar sua "saída () ”Função para encerrar o programa logo no momento.
Após as duas declarações de tentativa-excepção, usamos o endereço IP recém-adquirido como "Hip" e o número da porta "P" para conectar o soquete com o host do Google, I I.e., Usando a função Connect () do módulo de soquete. A declaração de impressão da linha final mostrará que o soquete se conectou corretamente ao host do Google. Vamos salvar e executar nosso código no Spyder para ver o que temos em troca.
soquete de importaçãoDepois de executá -lo, recebemos as mensagens de sucesso em nossa tela de console do Spyder. A primeira mensagem foi mostrar que o soquete foi criado perfeitamente e a segunda linha mostrou que a conexão também foi estabelecida.
Exemplo 02
Um sistema de comunicação chamado UDP envia pacotes individuais através da Web sem garantias de entrega oportuna ou chegada garantida. A citação do dia é um serviço que emprega UDP (QOTD). Iniciamos este programa com a importação do módulo de soquete. Depois disso, estamos usando o gerenciador de contexto "com" para criar um novo soquete como "SOC" utilizando os parâmetros AF_INET e SOCK_DGRAM na função Socket () do módulo de soquete para criar um soquete de datagrama da família IPv4.
Depois disso, estamos usando a variável "texto" para inicializar uma mensagem vazia. O serviço QOTD opera passando informações aleatórias para o soquete; Quando entregamos uma mensagem em branco, apenas responde com uma cotação. Empregamos sequências binárias para comunicações TCP/UDP. O número da porta foi definido como 17 para receber dados de cotação. Temos usado o URL de um host e o número da porta para obter o endereço IP "ADR" do host específico. Este endereço "ADR" e a mensagem vazia "texto" foram passados para a função sendto () do módulo de soquete com o objeto "SOC" para enviá -lo para o host específico.
A função "RECVFROM" é o método usado pelos soquetes UDP para recuperar informações. O tamanho do buffer serve como seu parâmetro. A resposta retornada é uma dupla (dados, endereço), no qual o parâmetro "endereço" é o identificador do soquete que entregou os dados, e o parâmetro "info" é uma sequência de bytes que contém os dados que foram obtidos. A declaração de impressão está usando a função "decodificar" para decodificar e exibir as informações que obtemos.
soquete de importaçãoQuando executamos este programa, temos a cotação em troca.
Conclusão
Este artigo é sobre o uso da família Af_inet de módulos de soquete em Python. Tentamos dois exemplos para criar um soquete, conectá -lo ao host, enviar uma mensagem vazia e receber as citações do host.