场景:我正在尝试找出一种使用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实例?
答案 0 :(得分:1)
如果您最近在其他地方登录,可能看起来您已被阻止服务器的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
答案 1 :(得分:0)
尝试一下:
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,有时需要更新一些信息,然后重试。