Python之socket。本文使用Python编写了一个客户端和服务端,服务端收到客户端发送的字符串后打印出结果。
socket_server.py文件: [codesyntax lang="python"]
__author__ = 'suren'
import socket
import sys
HOST = 'localhost'
PORT = 9000
def start():
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
sock.bind((HOST, PORT))
sock.listen(100)
except:
sys.exit()
while True:
conn, add = sock.accept()
handshake(conn)
pass
def handshake(conn):
buf = conn.recv(1024)
print(buf)
conn.close()
pass
if __name__ == '__main__':
start()
[/codesyntax]
socket_client.py文件: [codesyntax lang="python"]
__author__ = 'suren'
import socket
import sys
def start_client():
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
sock.connect(('localhost', 9000))
except:
print("connect error")
sys.exit()
sock.send('hello from http://surenpi.com')
sock.close()
if __name__ == '__main__':
start_client()
[/codesyntax]
启动服务端:python socket_server.py 启动客户端:python socket_client.py 这时你就可以看到服务端打印出了:hello from http://surenpi.com
[codesyntax lang="python"]
!/usr/bin/python
# -*- coding:utf8 -*-
# http://surenpi.com
import socket
HOST = '127.0.0.1'
PORT = 1234
ADDR = (HOST, PORT)
server = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
server.bind(ADDR)
while True:
data, addr = server.recvfrom(1024)
print data, addr
[/codesyntax]
[codesyntax lang="python"]
# -*- coding:utf8 -*-
#!/usr/bin/python
# -*- coding:utf8 -*-
# http://surenpi.com
import socket
HOST = '127.0.0.1'
PORT = 1234
ADDR = (HOST, PORT)
client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
data = 'hello surenpi.com'
client.sendto(data, ADDR)
client.close()
[/codesyntax]