如何在Python中为IRC机器人配置SSL?

问题描述 投票:0回答:1

如何解决这个错误。

ERROR :NON-SSL命令只在SSL端口收到。检查你的连接设置

我的代码:

import socket

ircsock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server = "server" 
channel = "#channel" 
ircsock.connect((server, 6697)) 
ircsock.send(bytes("USER "+ botnick +" "+ botnick +" "+ botnick + " " + botnick + "n", "UTF-8"))
ircsock.send(bytes("NICK "+ botnick +"n", "UTF-8")) 
ircsock.send(bytes("JOIN "+ channel +"n", "UTF-8")) 
ircmsg = ircsock.recv(4096).decode("UTF-8")
print(ircmsg)
python-3.x ssl irc
1个回答
0
投票

用一个SSL套接字包住连接套接字,比如说。

import ssl
import socket

port = 6697
server = "server"  # Replace me with real address
ctx = ssl.create_default_context(purpose=ssl.Purpose.CLIENT_AUTH)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
ircsock = ctx.wrap_socket(sock) 
ircsock.connect((server, port))
ircsock.send(bytes("USER "+ botnick +" "+ botnick +" "+ botnick + " " + botnick + "n", "UTF-8"))
...
© www.soinside.com 2019 - 2024. All rights reserved.