python socket TCP UDPの簡単な例
2555 ワード
pythonのsocketで、簡単にTCPとUDPの例を作りました
TCP
Server:
Client:
UDP
Server:
Client:
TCP
Server:
import socket
class TcpServer():
def __init__(self):
self.socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
self.socket.bind(("", 9999))
self.socket.listen(5)
def start(self):
while True:
sock, address = self.socket.accept()
print str(address) + " connected!"
sock.send("hello world")
sock.close()
TcpServer().start()
Client:
import socket
class TcpClient():
def __init__(self):
self.socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
self.socket.connect(("127.0.0.1", 9999))
def send(self):
#
value = self.socket.recv(10)
print value
TcpClient().send()
UDP
Server:
import socket
class UdpServer():
def __init__(self):
self.socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
self.socket.bind(("", 9999))
def start(self):
while True:
data, address = self.socket.recvfrom(2048)
print "address:" + str(address) + " data:" + data
self.socket.sendto("hello world", address)
UdpServer().start()
Client:
import socket
class TcpClient():
def __init__(self):
self.socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
self.socket.connect(("127.0.0.1", 9999))
def send(self):
self.socket.send("this is client")
result = self.socket.recv(1024)
print result
class TcpClient2():
def __init__(self):
self.socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
def send(self):
self.socket.sendto("this is client", ("127.0.0.1", 9999))
result = self.socket.recv(1024)
print result
#
#TcpClient().send()
TcpClient2().send()