十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
创新互联www.cdcxhl.cn八线动态BGP香港云服务器提供商,新人活动买多久送多久,划算不套路!
创新互联建站主要从事成都网站设计、成都做网站、网页设计、企业做网站、公司建网站等业务。立足成都服务尚志,10余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108这篇文章主要介绍解决python中udp不能接收数据的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
python3通过udp方式发送的消息可以在网络调试助手接收,但是在网络调试助手上发送的消息在python3上却接收不到。
首先python3接收写的代码如下:
import socket def receive_message(): udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) #创建一个套接字 udp_socket.bind(('', 63630)) #绑定本地信息,自己电脑的ip和程序的端口。ip一般不用写,表示本机的任意一个ip,端口大于常用的1023就可以 while True: udp_data = udp_socket.recvfrom(1024) #接收数据,1024表示本次接收的大字节数 if udp_data[0].decode(encoding='gbk') != 'end': print('{}:{}'.format(str(udp_data[1]), udp_data[0].decode(encoding='gbk'))) else: break udp_socket.close() #关闭套接字 if __name__ == '__main__': receive_message()
解决方法:
在Windows防火墙设置中勾选下图中红色箭头指向的选项
再次运行程序,win10弹出对话框如下:
以上是解决python中udp不能接收数据的方法的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联-成都网站建设公司行业资讯频道!