Python中的多套接字/重用/关闭套接字_socketobject错误
所以我一直在尝试用python制作这个机器人,它使用套接字在网站上的聊天中获取一些信息。这需要登录,它获取密钥,然后使用第一次连接的密钥,您可以连接到聊天室(不同的套接字/ip) 我试着用socket.close()之类的工具来实现这一点,但遗憾的是,我不断地出现错误:( 这是我目前正在使用的:Python中的多套接字/重用/关闭套接字_socketobject错误,python,sockets,packet,bots,Python,Sockets,Packet,Bots,所以我一直在尝试用python制作这个机器人,它使用套接字在网站上的聊天中获取一些信息。这需要登录,它获取密钥,然后使用第一次连接的密钥,您可以连接到聊天室(不同的套接字/ip) 我试着用socket.close()之类的工具来实现这一点,但遗憾的是,我不断地出现错误:( 这是我目前正在使用的: def send_packet(socket, packet): socket.send(packet+chr(0)) def socket_make(host, port): s =
def send_packet(socket, packet):
socket.send(packet+chr(0))
def socket_make(host, port):
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((host, port))
return s
socket = socket_make(get_ip('8'), get_port('8'))
send_packet(socket, '<y r="8" />')
socket.recv(1024)
send_packet(socket, '<v n="'+username+'" p="'+password+'" />')
tmp = socket.recv(1024)
socket.close()
socket = socket_make("174.36.242.40",10032)
send_packet(socket, '<y r="'+infos['c']+'" />')
token = socket.recv(1024)
token = token[token.find('i="')+3:token.find('" c="')]
您以前导入过套接字模块。然后您创建了一个同名的全局变量(“socket”),该变量现在取代了该模块。该模块消失了,现在是一个套接字对象。然后,当您再次尝试调用socket时,全局
socket
不再是该模块,而是套接字实例
使用不同的名称,或者更好地将整个客户机封装到另一个类中
AttributeError: '_socketobject' object has no attribute 'socket'