Potřeboval bych poradit, už si nevím rady. Potřeboval bych v Pythonu přes XMPP přijímat zprávy a dále je zpracovávat, to by problem nebyl. Problem nastane až tehdy když jsou ve zprave znaky s diakritikou ěščřžýáíéůú. Řetězec který se nachází v proměnné tak nelze dále zpracovávat. Soubor se scriptem je uložen v UTF-8. Přečetl jsem i kdejakou dokumentaci ale stale nic. Moc prosím o jakoukoliv radu
Chybove hlaseni:
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-3: ordinal not in range(128)
Script:
#!/usr/bin/python
# -*- coding: utf-8 -*-
import sys
import site
import xmpp
import os
import signal
import time
def messageCB(conn,msg):
zprava = str(msg.getBody())
print zprava
def StepOn(conn):
try:
conn.Process(1)
except KeyboardInterrupt:
return 0
return 1
def GoOn(conn):
while StepOn(conn):
pass
def main():
jid="abc@abc"
pwd="abc"
jid=xmpp.protocol.JID(jid)
cl = xmpp.Client(jid.getDomain(), debug=[])
if cl.connect() == "":
print "not connected"
sys.exit(0)
if cl.auth(jid.getNode(),pwd) == None:
print "authentication failed"
sys.exit(0)
cl.RegisterHandler('message', messageCB)
cl.sendInitPresence()
GoOn(cl)
main()
Fórum › Python
Bot a kódování
Zjistit počet nových příspěvků
Přidej příspěvek
Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
Uživatelé prohlížející si toto vlákno
Uživatelé on-line: 0 registrovaných, 7 hostů
Moderátoři diskuze