本文实例讲述了Python+Socket实现基于UDP协议的局域网广播功能。分享给大家供大家参考,具体如下:
服务器端:
1
2
3
4
5
6
7
8
|
# udp_gb_server.py
'''服务端(UDP协议局域网广播)'''
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1 )
PORT = 1060
network = '<broadcast>'
s.sendto( 'Client broadcast message!' .encode( 'utf-8' ), (network, PORT))
|
客户端:
1
2
3
4
5
6
7
8
9
10
11
|
# udp_gb_client.py
'''客户端(UDP协议局域网广播)'''
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1 )
PORT = 1060
s.bind(('', PORT))
print ( 'Listening for broadcast at ' , s.getsockname())
while True :
data, address = s.recvfrom( 65535 )
print ( 'Server received from {}:{}' . format (address, data.decode( 'utf-8' )))
|
运行效果:
希望本文所述对大家Python程序设计有所帮助。
原文链接:http://www.cnblogs.com/hhh5460/p/4249329.html