IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> python多机网络通信服务端接收不到数据 -> 正文阅读

[Python知识库]python多机网络通信服务端接收不到数据

python多机网络通信服务端接收不到数据

使用python的网络通信可以很方便地在局域网内传输数据,程序可以分为服务端和客户端

UDP通信

在网上能很容易找到以下程序,在本机测试时没有任何问题,可以通信成功。但是当在局域网内进行多机通信时没有收到数据

服务端程序

import socket

# 服务端的ip地址和端口,地址可以写主机当前的局域网ip、127.0.0.1或者直接留空
# 端口服务端和客户端保持一致,不要使用常用的端口
address = ('127.0.0.1', 9999)
# Internet进程间通信,SOCK_DGRAM数据报套接字
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind(address)

while True:
	# 阻塞接收数据,最大长度1024
    data, addr = s.recvfrom(1024)
    if not data:
        break
    print('get data from', data.decode('utf-8'))
s.close()

客户端程序

import socket

# 服务端地址和端口
address = ('127.0.0.1', 10000)
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
while True:
    data = input()
    if not data:
        break
    s.sendto(data.encode('utf-8'), address)
s.close()

测试环境

  • 客户端:linux系统
  • 服务端:windows系统
  • 测试现象:
    • 在本地网络测试时可以正常通信,但是多机通信时windows服务端程序不能接收到数据
    • windows端使用网络调试助手可以接收到数据
  • 原因分析:
    • windows的防火墙策略导致无法接收到网络通信的数据
    • 在电脑上第一次使用python进行网络通信时,系统通常会弹出一个防火墙的窗口,点击允许后应该就可以正常进行网络通信了
    • 但是测试时使用的是anconda的python虚拟环境,好像没有弹出防火墙允许的窗口
  • 解决方法
    1. 打开控制面板->系统和安全->Windows Defender防火墙->允许应用或功能通过Windows Defender防火墙
      在这里插入图片描述
    2. 将两个python.exe都勾选上,虚拟环境中的python就可以正常进行网络通信了
  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-10-31 11:52:04  更:2022-10-31 11:53:11 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/26 3:23:55-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计