场景:我正在尝试找到一种方法来使用python代码在Skype中发送快速测试消息。从文档(https://pypi.python.org/pypi/SkPy/0.1)我得到一个片段,应该允许我这样做。
问题:我按预期重新填充了信息,但在尝试创建与skype的连接时出现错误:
sk = Skype(username, password)
我明白了:
SkypeAuthException :(“无法从登录响应中检索t字段”,)
我不知道这个错误意味着什么。
问题:如何解决这个问题?
代码:这基本上就是我使用的,加上我的用户名和密码:
from skpy import Skype
sk = Skype(username, password) # connect to Skype
sk.user # you
sk.contacts # your contacts
sk.chats # your conversations
ch = sk.contacts["joe.4"].chat # 1-to-1 conversation
ch.sendMsg(content) # plain-text message
问题2:有没有办法做到这一点,密码和用户名不应该在代码中?例如,是否可以使用已在该计算机中打开的Skype实例?
如果您最近在其他地方登录,可能看起来您已被阻止服务器的IP。这适合我。
from skpy import Skype
loggedInUser = Skype("userName", "password")
print(loggedInUser.users) // loggedIn user info
print(loggedInUser.contacts) // loggedIn user contacts
PS:skpy版本:0.8.1
试试这个:
def connect_skype(user, pwd, token):
s = Skype(connect=False)
s.conn.setTokenFile(token)
try:
s.conn.readToken()
except SkypeAuthException:
s.conn.setUserPwd(user, pwd)
s.conn.getSkypeToken()
s.conn.writeToken()
finally:
sk = Skype(user, pwd, tokenFile=token)
return sk
token参数可以是空文件,但您需要先创建才能使用此函数。该函数将在此文件中写入客户端令牌。
如果仍然存在问题,请尝试在线登录Skype,有时需要更新一些信息然后再试一次。