• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Kratos

[Python] Transferir arquivos via Socket

4 mensagens neste tópico

;)

Irei explicar neste simples exemplos, como tranferir um arquivo de um determinado local (seu computador por exemplo), para outro local qualquer, atraves de socket.

Em Python, manipular sockets é uma tarefa extremamente FÁCIL.

Pois bem, vamos supor que você que tranferir um FILE.rar do seu computador, para outro computador:

Este outro computador, deve estar rodando o Servidor, esperando uma conexão do Cliente.

# Servidor

import socket
print "Servidor"

HOST = "localhost"
PORT = 57000

s=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
print "Escutando a porta..."
s.bind((HOST,PORT))
s.listen(1)

print "Aceitando a conexao..."
conn,addr= s.accept()

print "recebendo o arquivo..."
arq = open('File_ouputt.rar','wb')

while 1:

dados=conn.recv(1024)
if not dados:
	break
arq.write(dados)

print "saindo..."
arq.close()
conn.close()

Então no seu PC você com o Arquivo File.rar, executará o Cliente.py


# Cliente
import socket

print "Clinte"

HOST='localhost' #coloca o host do servidor
PORT=57000

s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)

print "conectando com servidor..."
s.connect((HOST,PORT))

print "abrindo arquivo..."
arq=open('File.rar','rb')

print "enviado  arquivo"
for i in arq.readlines():
#print i
s.send(i)

print "saindo..."
arq.close()
s.close()

Este exemplo acima é muito simples, você pode adaptar, modificar e melhorar toda sua estrutura de acordo com a necessidade.

:thumbsup: Kratos

Este tutorial pode ser visto na wiki em http://wiki.portugal-a-programar.pt/dev_geral:python:transferir_via_sockets

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu fiz um virus (mesmo um virus, instalava-se sozinho), e utilizava um método do género para sacar ficheiros do outro pc ;)

(sim, eu sei que é feio, mas é divertido :P)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu fiz um virus (mesmo um virus, instalava-se sozinho), e utilizava um método do género para sacar ficheiros do outro pc ;)

(sim, eu sei que é feio, mas é divertido :P)

Se é divertido ??, I love virus.... rs

Eu estou para terminar um worm, do tipo Oligomórfico em Python.

Alias, pra ser franco, quase tudo que eu uso nos meus codes, é resultado de pesquisa para encrementar minha "criaturas".

...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora