[Tutor PyCZ] Html
Pavel Kosina
geon na post.cz
Úterý Říjen 3 14:58:36 CEST 2006
Marek napsal(a):
> Zdravim,asi to bude dost trapna otazka, ale prece-mam stranku, kde je textovy
> pol a tlacitko odeslani(treba jmena a heslo a odeslat) a chtel bych, aby mi
> to doplnilo ty pole. zkratka prihlaseni treba na mail pres python(potom treba
> i neco vic). Zkousel jsem neco z prikladu na python.org ,ale moje anglictina
> a znalosti na tohle tezce nestaci. Diky za cokoli
>
Taky možná budu trapný - začnu hodně od začátku, kdyžtak to přeskoč ;-)
Když něco napíšeš do pole a zmáčkneš tlačítko, tak se to na server může
předat dvěma způsoby - POST a GET. To je důležité zjistit, jak se zrovna
tvoje tlačíko chová. Já používám 2 způsoby:
1/ FF + WebDeveloper - Forms -Display Form details
2/ něco do pole napíši, odliknu, a když můj dotaz vidím v adrese url,
tak je to GET, jinak je "schovaný" a jë to POST
Asi používáš modul urllib. Je důležité si uvědomit, že budeš volat
scriptem tu stránku, která se ti objeví *po* stisku tlačítka, ne tu, kde
zadáváš do vyhledávacího pole. Každý způsob (GET nebo POST) má
specifické použití funkcí v urllib, ale to je vidět pěkně v Helpu v
Příkladech.
Je třeba pečlivě odečíst všechny parametry, které se předávají. U GET to
můžeš zjistit z adresní řádky, u POST pak pomocí WebDeveloper.
Malá ukázka:
import urllib, os
params = urllib.urlencode({'query': 'python'})
url= "http://www.abclinuxu.cz/Search?%s" % params
print url
f = urllib.urlopen(url)
html=file("html.html","w")
html.write(f.read())
html.close()
os.startfile("html.html")
P.S. Mě osobně by zajímalo, jak v tomto příkladě dosáhnout, aby se
stáhlo i CSS a stránka se zobrazila jak má....., pokud by někdo věděl.
Jinak ale to snad není potřeba, pokud ti jde jen o data .....
Kdyžtak se ptej dál, pokud to nepůjde ....
--
geon
Pavel Kosina
Další informace o konferenci Tutor