fir
2020-04-15 00:58:06 UTC
mam dziwny problem (moze nie taki dziwny w sumie ale nie jestem przyzwczajony do takich bledow)
generalnie moj bot (w pythonie 2.7)
czyta linijke z czata przez
ircmsg = ircsock.recv(2048)
i nic na tym nie robie nie wywoluje ani zadnego decode ani encode
i np polskie litery w tym dzialaja (są) choc nie wiem jaki to format, moge wyciac z tego np kawalek i wyslac do translatora google, odeslany tekst tez zawiera egzotyczne znaki
ten wygenerowany tekst odsylam przez
ircsock.send(s.encode('UTF-8'))
bez tego encode to to raczej nie dziala
ale z tym encode dziala
problem pojawia sie gdy te linijki w srodku
wstawiam do slownika ktory zapisuje do pliku json na dysk
czytam i zapisuje ten json ze tak powiem normalnie bez zadnych udziwnien
bo jesli chce dodac "KóKó" do tego slowniek ai zapisac toz apisze sie to normalnie, natomiast gdy chce to odczytac i wyslac na kanal to robie
s = bot_memory[key]
say(s.decode('UTF-8'))
bez tego decode nie dziala (leci blad)
z tym decode co prawda tez leci blad tylko inny
(przy czym moze dodam ze slownik czytam tylko raz na strcie programu z dsku, natomiast zapisuje przy kazdym wstawieniu tekstu)
jesli jest to decode to moge zapisywac wpisy na dysk i moge je czytac ze slowniek i wyswietlac na kanal - ale tylko poki nie zamkne bota i nie wczytam tego z dysku, wtedy przy probie odczytania wpisu i wyslania go na kanal z tego leci blad (ascii codect cant encode...)
z kolei jak to decode wywale jest
odwrotnie, po uruchomieniu boyta moge
wysylac zapisane za poprzednim razem wpisy na kanal ale nie moge zapisac i odczytac nowego, tj dokladniej w pliku tez sie zapisuje ale odczytanie go ze slownika i proba poslania na kanal dale blad (ascii codec cant decode...)
o co tu chodzi? jak to naprawic?
generalnie moj bot (w pythonie 2.7)
czyta linijke z czata przez
ircmsg = ircsock.recv(2048)
i nic na tym nie robie nie wywoluje ani zadnego decode ani encode
i np polskie litery w tym dzialaja (są) choc nie wiem jaki to format, moge wyciac z tego np kawalek i wyslac do translatora google, odeslany tekst tez zawiera egzotyczne znaki
ten wygenerowany tekst odsylam przez
ircsock.send(s.encode('UTF-8'))
bez tego encode to to raczej nie dziala
ale z tym encode dziala
problem pojawia sie gdy te linijki w srodku
wstawiam do slownika ktory zapisuje do pliku json na dysk
czytam i zapisuje ten json ze tak powiem normalnie bez zadnych udziwnien
bo jesli chce dodac "KóKó" do tego slowniek ai zapisac toz apisze sie to normalnie, natomiast gdy chce to odczytac i wyslac na kanal to robie
s = bot_memory[key]
say(s.decode('UTF-8'))
bez tego decode nie dziala (leci blad)
z tym decode co prawda tez leci blad tylko inny
(przy czym moze dodam ze slownik czytam tylko raz na strcie programu z dsku, natomiast zapisuje przy kazdym wstawieniu tekstu)
jesli jest to decode to moge zapisywac wpisy na dysk i moge je czytac ze slowniek i wyswietlac na kanal - ale tylko poki nie zamkne bota i nie wczytam tego z dysku, wtedy przy probie odczytania wpisu i wyslania go na kanal z tego leci blad (ascii codect cant encode...)
z kolei jak to decode wywale jest
odwrotnie, po uruchomieniu boyta moge
wysylac zapisane za poprzednim razem wpisy na kanal ale nie moge zapisac i odczytac nowego, tj dokladniej w pliku tez sie zapisuje ale odczytanie go ze slownika i proba poslania na kanal dale blad (ascii codec cant decode...)
o co tu chodzi? jak to naprawic?