![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python网络编程
peterpan--1998
这个作者很懒,什么都没留下…
展开
-
python中socket编程验证客户端的合法性hmac模块
python中socket编程验证客户端的合法性hmac模块,简单的验证,下面是代码server端代码import osimport socketimport hmacclient_key = b'big' #这里注意是b,而在open()函数中和client端的字典中用的rsk = socket.socket()sk.bind(('127.0.0.1',8080))sk.listen()def client_check(conn): msg = os.urandom(32)原创 2021-08-14 21:41:51 · 333 阅读 · 0 评论 -
python大文件的上传
python大文件的上传,下载是同样的套路,下面是简单的代码server端代码import socketimport jsonimport structbuffer = 1024 #这里使用1024在上传视频的时候不容易出错,如果选择更大的数回出现错误sk = socket.socket()sk.bind(('127.0.0.1',8080))sk.listen()conn,addr = sk.accept()head_len = conn.recv(4)head_len = str原创 2021-08-14 21:37:46 · 875 阅读 · 0 评论 -
python中黏包问题的解决
python中黏包问题的解决1.在前面我们知道tcp容易产生黏包的问题,而udp不会产生黏包的问题,但是会产生丢包的问题,tcp应用的场景很多所以黏包问题必须要解决。1.解决黏包问题第一种方法,我们知道黏包问题是由于tcp的优化算法将两个不太大的数据包合并了一起发送的,这种情况一般出现在连续使用几个send()出现的,所以我们如果知道要发送的数据有多大我们就可以设置接收的大小,这样就可以刚好能把所有的数据接收完。下面是具体的步骤细节见代码这是远程执行cmd命令并返回结果的程序server端代码im原创 2021-08-11 17:14:01 · 685 阅读 · 0 评论 -
pyhthon中的黏包问题和非黏包问题
python中的黏包问题和非黏包问题主要是tcp和udp的区别,tcp都是可靠传输需要建立链接进行传输信息是全双工通信的,udp是不可靠传输不需要建立链接进行通信,两者具有很明显的差别。1.socket中使用tcp建立链接出现的黏包现象,实现的是远程启动cmd命令,在服务端向客户端发送cmd命令,客户端返回执行结果server端代码import socketsk = socket.socket()sk.bind(('127.0.0.1',8080))sk.listen()conn,addr原创 2021-08-07 16:10:33 · 140 阅读 · 0 评论 -
使用socket完成客户端向服务端发送时间戳,在客户端输出格式化时间
使用socket完成客户端向服务端发送时间戳,服务端向客户端返回格式化时间的小例子server文件代码import socketimport timesk = socket.socket()sk.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1)sk.bind(('127.0.0.1',8080))sk.listen()conn,addr = sk.accept()while True: ret = conn.recv(1024原创 2021-08-04 19:14:48 · 1130 阅读 · 0 评论 -
socket的初步使用
下面是socket的初步使用,实现两个py文件的互动这里是server文件的代码import socket #导入模块sk = socket.socket() #创建一个对象sk.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1) #防止出现重启错误sk.bind(('127.0.0.1',8080)) #绑定端口号sk.listen() #服务端进行监听请求conn,addr = sk.accept() #获取链接原创 2021-08-04 16:44:38 · 90 阅读 · 0 评论