[python] sockety - problem s HTTP spojenim

Ondrej Beranek rainbof na gmail.com
Pátek Listopad 16 20:09:12 CET 2007


Technicka, atlantis talker je na portu 7000

2007/11/16, Filip Štědrosnký <regnarg na seznam.cz>:
> Zdravím,
> nejsem si jistý, ale mám takový dojem, že ten kód fungovat ani nemůže.
> První, co mě praštilo do očí, je řádek "exit", který, i kdyby hypoteticky
> v aktuálním namespace existovala funkce exit, neudělá vůbec nic, jen na ni
> získá referenci a zahodí ji. Doporučil bych importovat sys a použit
> sys.exit(). Dále se mi zdá, že bez nonblocking IO není možné v jednom vlákně
> načítat a posílat vstup, protože se to snadno může někde zaseknout čekáním
> na vstup. Ohledně funkce recv() si nejsem jistý jak v tomhle ohledu funguje,
> většinou používám socket.makefile a potom s tím pracuji jako s klasickým
> soketem. Možná by také za zmínku stály moduly asyncore a asynchat, které
> tyto problémy řeší systémem událostí (uznávám, vlákna jsou jednodušší, ale
> řešit některé problémy s nimi je dosti netriviální).
>
> On Pá, lis 16, 2007 at 07:37:37 +0100, Tomy novella wrote:
> > Věroš: nooo ako tak citam o TCP/IP, zamotavam sa do toho hlbsie a
> > hlbsie a nakoniec zistujem, ze neviem totalne nic ;-) nechapem naco
> > vymysleli ten model ISO/OSI a naco rozlisuju tolko medzi tolkymi tymi
> > vrstvami. kazdopadne to osvietenie tak skoro nepride :)
> >
> > co som sa vsak chcel spytat, je, ze:
> >
> > - skusam si spravit klienta na telnet, resp. chcem, aby ma to
> > pripojilo na atlantis.talker.sk problemom vsak je, ze
> > nefunguje(nedokaze komunikovat) ;( what`s wrong?
> > -----------------------
> > import socket, string
> > clisock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
> > clisock.connect(('atlantis.talker.sk', 23))
> >
> > while 1:
> >     data = clisock.recv(65536) # nechce sa mi to bufferovat ;)
> >     for riadok in data.split('\r\n'):
> >         print riadok
> >     a = raw_input('napis text: ')
> >     if(a == 'qq'):
> >         print "ukoncujem spojenie"
> >         clisock.close()
> >         exit # ak napisem  'qq' skonci sa mi program
> >     clisock.send(a)
> > -----------------------------
>
> _______________________________________________
> Python mailing list
> Python na py.cz
> http://www.py.cz/mailman/listinfo/python
>


Další informace o konferenci Python