您的位置:首页 > 编程语言 > Python开发

使用python编写监听端

2018-04-12 10:11 751 查看

本文实例为大家分享了python编写监听端的具体代码,供大家参考,具体内容如下

import socket
import time
import sys
import string
import struct
import errno
import binascii
#Definition
ser_ip = 'localhost'
ser_port = 15001
HEADER_LISTENER = "IIII"
split_time = 4
class TcpClient:
def run_srv(self):
sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
print ("Trying to connect server...")
addr = (ser_ip, ser_port)
print ("Connecting " + ser_ip + ":" + str(ser_port))
#Connect server
try:
sock.connect(addr)
except Exception,e:
print ("Error:%s" % (e))
sock.close()
sys.exit()
hl = struct.pack(HEADER_LISTENER,0,0,0,0)
header_len = len(hl)
while True:
try:
buf_recv = sock.recv(header_len)
buf_header = buf_recv[0:header_len]
thread_id = struct.unpack("!4I" , buf_header)[0]
err_num = struct.unpack("!4I" , buf_header)[1]
com_num = struct.unpack("!4I" , buf_header)[2]
wait_num = struct.unpack("!4I" , buf_header)[3]
#print("header len %d, recv len %d,buf_header:%s,buf_recv:%s")%(header_len,len(buf_recv),binascii.hexlify(buf_header),binascii.hexlify(buf_recv))
print ("split time:%d")%(split_time)
print ("thread id :%d")%(thread_id)
print ("error nums:%d")%(err_num)
print ("compl nums:%d")%(com_num)
print ("wait nums:%d")%(wait_num)
print ("----------------------")
except Exception,e:
print ("Error:%s" % (e))
sock.close()
sys.exit()
if __name__ == '__main__':
if (len(sys.argv) >= 2):
ser_port = int(sys.argv[1])
client = TcpClient()
client.run_srv()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python 监听端