[python] httplib a práce se sms bránou

slush slush na centrum.cz
Pondělí Prosinec 15 15:16:28 CET 2008


Zdravim,

co se tyka samotne logiky pro O2 branu, doporucuju postup skontrolovat s
funkcni branou
http://code.google.com/p/esmska/source/browse/trunk/esmska/operators/%5BCZ%5DO2.operator,
konkretne metoda send().

Co se tyka navratove hodnoty 302 Found,na kterou adresu odpoved odkazuje?
Neznamena to totiz nic jineho nez presmerovani prohlizece na jinou stranku a
samo o sobe to neni nic skodliveho.

Marek

2008/12/15 Martin Stiborský <martin.stiborsky na gmail.com>

> Zdravím.
> Pokouším se odeslat přes skript esemesku do sítě O2. Nedaří se, po
> odeslání mi kód vypíše 302 Found, neměl bych spíš vidět 200 OK ?
> Koukám do logu z wiresharku při odeslání sms pomocí skriptu a přímo z
> webu, ale asi mi něco uniká, možná zapomínám posílat nějakou hlavičku,
> která je důležitá, nebo nevím. Nebo mám nějakou faktickou chybu v kódu
> ?
> Chtěl jsem to celé udělat pomocí urllib(2), akorát se nedařilo, tak
> jsem zkusil httplib.
>
> # -*- coding: utf-8 -*-
>
> from BeautifulSoup import BeautifulSoup
> import urllib
> import urllib2
> import httplib
>
> cislo = "telefonni cislo"
>
> def getHTML(conn):
>        conn.request("GET", "/")
>        response = conn.getresponse()
>
>        return response.read()
>
>
> def findAndDownloadCaptcha(html):
>        soup = BeautifulSoup(html)
>        image = soup.findAll('img', alt=u"kód")[0]
>        imageSrc = image.attrMap['src']
>
>        target = urllib.urlopen("%s%s" % ("http://sms.1188.cz", imageSrc))
>        data = target.read()
>        target.close()
>
>        out = file("captcha", "w")
>        out.write(data)
>        out.close
>
> conn = httplib.HTTPConnection("sms.1188.cz:80")
> html = getHTML(conn)
>
> findAndDownloadCaptcha(html)
>
> captcha = raw_input("Kod:")
>
> headers = {'User-Agent' : 'Mozilla/5.0 (X11; U; Linux i686; en-US;
> rv:1.9.0.4) Gecko/2008111922 GranParadiso/3.0.4',
>           'Referer' : 'http://sms.1188.cz/',
>           "Content-type": "application/x-www-form-urlencoded"
>           }
>
> #values = {'adress' : '732653452',
>          #'code' : captcha,
>          #'replyEmail' : '',
>          #'text' : 'ahoj :)',
>          #'send' : 'ODESLAT' }
>
> #data = urllib.urlencode(values)
> data = "adress=%s&code=%s&replyEmail=&text=Ahoj&send=ODESLAT" % (cislo,
> captcha)
>
> conn.request("POST", "/", data, headers)
>
> response = conn.getresponse()
>
> print response.status, response.reason
>
> --
> S pozdravem
> Martin Stiborský
>
> Jabber: stibi na njs.netlab.cz
> ICQ: 224-065-849
> _______________________________________________
> Python mailing list
> Python na py.cz
> http://www.py.cz/mailman/listinfo/python
>
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://www.py.cz/pipermail/python/attachments/20081215/3f572974/attachment.htm>


Další informace o konferenci Python