我根据一个视频教程编写了一个简单的Python twitch机器人,但教程中没有包含whisper功能。它当前可以连接到我指定的频道的聊天,但当我尝试让它发送耳语时,没有任何反应。以下是相关的代码位:
import socket
def openSocket():
s = socket.socket()
s.connect((HOST, PORT))
message = "PASS " + PASS + "\r\n"
s.send(message.encode('utf-8'))
message = "NICK " + USER + "\r\n"
s.send(message.encode('utf-8'))
message = "JOIN #" + CHAN + "\r\n"
s.send(message.encode('utf-8'))
return s
def sendMessage(s, message):
messageTemp = "PRIVMSG #" + CHAN + " :" + message + "\r\n"
s.send(messageTemp.encode('utf-8'))
print("Sent:" + messageTemp)
def sendWhisper(s, user, message):
messageTemp = "PRIVMSG #jtv :/w " + user + " " + message
s.send(messageTemp.encode('utf-8'))
import string
from Socket import sendMessage
def joinRoom(s):
readbuffer = ""
Loading = True
while Loading:
readbuffer = readbuffer + s.recv(1024).decode()
temp = readbuffer.split('\n')
readbuffer = temp.pop()
for line in temp:
print(line)
Loading = loadingComplete(line)
def loadingComplete(line):
if("End of /NAMES list" in line):
return False;
else: return True
我一直在读一些关于连接到某种类型的群聊以使其工作的内容,但我感到困惑,没有找到我想要的东西。这看起来应该是一个很容易解决的问题。任何帮助都是非常感谢的。
发布于 2018-08-04 07:24:24
你们已经很接近了。你搞砸的地方是jtv
前面不应该有#
def sendWhisper(s, user, message):
messageTemp = "PRIVMSG jtv :/w " + user + " " + message
s.send(messageTemp.encode('utf-8'))
https://stackoverflow.com/questions/33271632
复制相似问题