Jump to content
teckV

[Python] Networking

Recommended Posts

teckV

Para mim a parte mais excitante da programação são as comunicações multi-plataforma, multi-sistema ou por outras palavras - Networking sobre IP.

as comunicações entre processos (ou entre maquinas, é igual no caso dos sockets, até foram inventados como IPC, comunicações entre processos na mesma maquina) existem recorrendo a sockets.

o socket é um processo que de uma forma simples é como uma fábrica com um endereço e pode-se enviar materiais para esse endereço e estes são processado.

1º Cria-se um Socket e atribuise-lhe um endereço com numero da porta e tudo, porque a mesma fabrica pode ter varios serviços, um em cada porta.

ex: tcpSock = socket(AF_INET, SOCK_STREAM)

(para pormenores nos parametros vejam a documentação ou perguntem pessoalmente)

se for para um servidor, isto é, se for uma app que receve comunicações faz-se um bind ao endereço na propria maquina e fica a receber.

se for para uma app cliente inicia-se a comunicação para um endereço remoto.

servidor:

tcpSock.bind('localhost', 21567) # fica endereçado ao localhost(a propria maquina) e escuta na porta 21567

tcpSock.listen(5) # o 5 é uma variavel que indica o numero de ligações que recebe até dar time-outs.

cliente:

tcpSock.connect("www.microsoft.com", 80) # liga-se ao servidor remoto

tcpCliSock.send("experiencia") # envia o texto experiencia para o serviço remoto

data = tcpCliSock.recv(1024) # recebe do servidor remoto - o 1024 é o BufferSize, isto é, o numero de bytes que aceita de cada vez

print "comunicacao - ", data # visualizar como é obvio

tcpCliSock.close() # fechar a comunicação... devem fechar sempre os sockets para libertar recursos

no proximo post colocarei um exemplo completo e a funcionar

h2k5 - [tekViriathus]

Share this post


Link to post
Share on other sites
deathseeker25

Boas,

Acho que vou integrar estes posts que fizeste em pequenos tutoriais, ou tratas tu de fazer um tutorial maior?

Desde já o obrigado do pessoal do Portugal@Programar pelas dicas de Python que deste nestes posts.

Cumps

Share this post


Link to post
Share on other sites
teckV

faz como achares melhor... aos poucos irei dar a volta pelas partes mais cool do python... espero que gostem, é a melhor linguagem e devia ser mais usada por cá...

simples e muito eficaz, mesmo como deve ser...

e altamente extencivel, o facto de se integrar plenamente no SO permite fazer praticamente tudo...

h2k5

Share this post


Link to post
Share on other sites
deathseeker25
faz como achares melhor... aos poucos irei dar a volta pelas partes mais cool do python... espero que gostem, é a melhor linguagem e devia ser mais usada por cá...

simples e muito eficaz, mesmo como deve ser...

e altamente extencivel, o facto de se integrar plenamente no SO permite fazer praticamente tudo...

h2k5

Hmm...e eu agradeço essa tua disponibilidade para nos mostrares as maravilhas do Python.

Vou colocar em Inamovível e com a tag tutorial. Depois para dares a conhecer melhor o Python o melhor é apresentares um projecto para que o pessoal fique a conhecer a vertente prática do Python e uma das coisas que é possível fazer com esta linguagem.

Cumps

Share this post


Link to post
Share on other sites

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.