Como bien dice 0x5d tienes que averiguar sobre sockets, puertos y demás.
Entiendo que básicamente lo que quieres saber es si se puede realizar una conexión cliente / servidor. Si se puede, aquí te dejo un ejemplo muy básico
este es el servidor:
from socket import *
myHost = ''
myPort = 50007
sockobj = socket(AF_INET, SOCK_STREAM)
sockobj.bind((myHost, myPort))
sockobj.listen(5)
while True:
connection, address = sockobj.accept( )
print 'Server connected by', address
while True:
data = connection.recv(1024)
if not data: break
connection.send('Echo=>' + data)
connection.close( )
y este el cliente:
import sys
from socket import *
serverHost = 'localhost'
serverPort = 50007
message = ['Hello network world']
if len(sys.argv) > 1:
serverHost = sys.argv[1]
if len(sys.argv) > 2:
message = sys.argv[2:]
sockobj = socket(AF_INET, SOCK_STREAM)
sockobj.connect((serverHost, serverPort))
for line in message:
sockobj.send(line)
data = sockobj.recv(1024)
print 'Client received:', repr(data)
sockobj.close( )
Si quieres saber mas sobre servidores manejando clientes multiples, ftp, procesado de mails, cgi, etc. con Python pasate por:
http://ricardonarvaja.info/WEB/OTROS/PYTHON%20DESDE%20CERO/ETAPA%203/