XMPP 连接到服务器(Python)

Posted

技术标签:

【中文标题】XMPP 连接到服务器(Python)【英文标题】:XMPP connecting to server (Python) 【发布时间】:2013-04-25 08:54:08 【问题描述】:

我目前正在关注creating a Google Talk Bot 上的教程/入门

我已经制作了 EchoBot,但它在运行时失败并出现以下错误:

File "echobot.py", line 59, in <module>
if xmpp.connect(('talk.google.com'), '5222'):
File "C:\Python31\Lib\sleekxmpp\clientxmpp.py", line 143, in connect
reattempt=reattempt)
File "C:\Python31\Lib\sleekxmpp\xmlstream\xmlstream.py", line 372, in connect
self.address = (host, int(port))
ValueError: invalid literal for int() with base 10: 'a'

我尝试过 Python 3,3、3,2 和 3,1 解释器,结果相同。

我无法从教程中获取这些行来使用任一编译器进行编译:

if sys.version_info < (3, 0):
reload(sys)
sys.setdefaultencoding('utf8')

Bot 中失败的代码如下:

if xmpp.connect(('talk.google.com'), '5222'):
    xmpp.process(block=True)
else:
    print('Fekk ikkje kopla til')

感谢任何提示/帮助!

【问题讨论】:

【参考方案1】:

你写错了:

xmpp.connect(('talk.google.com', '5222'))
                               |
                             there you missed a comma

第二件事可能是将端口放在第二位。

xmpp.connect(('talk.google.com', 5222), '5222')

我不知道第二个参数,但是

互联网地址几乎总是(HOST, PORT)的元组

【讨论】:

谢谢,是逗号!赞赏。这有效:xmpp.connect(('talk.google.com', '5222')):

以上是关于XMPP 连接到服务器(Python)的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 PHP 连接到 XMPP 服务器

连接到 XMPP 服务器

在浏览器中使用 xmpp.js 连接到 XMPP 服务器

使用 Javascript 连接到 XMPP 服务器

无法使用 HTTP 绑定连接到 XMPP 服务器(openfire)

无法使用 aSmack 连接到本地 XMPP 服务器