abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 02:22 | Nová verze

Byla vydána verze 4.5 linuxové distribuce Parrot (Wikipedie). Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii.

Ladislav Hagara | Komentářů: 0
včera 17:22 | Pozvánky

V sobotu 23. února se uskuteční 6. ročník WordCampu – největší konferenci o WordPressu v ČR. Ke konferenci probíhá i soutěž typu CTF (Capture The Flag) o volné vstupenky, kde si lze zkusit zneužít běžné bezpečnostní chyby.

smíťa | Komentářů: 0
včera 17:11 | Pozvánky

Letošní ročník konference Prague PostgreSQL Developer Day se bude konat 13. a 14. února v prostorách FIT ČVUT. Program konference najdete na stránkách konference, stejně jako registrační formulář.

TomasVondra | Komentářů: 0
včera 16:55 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě v nástroji pro správu databází v jednom PHP souboru Adminer. Chyba je už půl roku opravena. Stačí Adminer aktualizovat.

Ladislav Hagara | Komentářů: 3
20.1. 18:33 | Nová verze

Byla vydána nová stabilní verze 2.7 svobodné decentralizované mikroblogovací platformy a sociální sítě podobné Twitteru Mastodon (Wikipedie). Detailní přehled novinek na GitHubu.

Ladislav Hagara | Komentářů: 0
20.1. 00:22 | Nová verze

Byla vydána nová vývojová verze datového formátu a souvisejících nástrojů Relational pipes. Verze v0.9 obsahuje vstupní moduly pro fstab, CSV, XML a příkazový řádek; výstupní moduly pro CSV, XML, ODS (ODF), GUI (Qt), hodnoty oddělené nulovým bajtem a tabulkový výstup do konzole. Relační data lze upravovat relačními příkazy grep, cut a sed.

xkucf03 | Komentářů: 61
19.1. 18:33 | Zajímavý software

Podman dospěl do verze 1.0.0. Jedná se o nástroj umožňující vytvářet a provozovat kontejnery, aniž by uživatel potřeboval práva roota.

Ladislav Hagara | Komentářů: 1
18.1. 16:44 | Zajímavý software

Na Kickstarteru lze podpořit vývoj svobodného softwarového nástroje Akira, jenž by měl umožnit designérům designování aplikací v Linuxu. Mělo by se jednat o alternativu k proprietárním nástrojům Sketch, Figma nebo Adobe XD.

Ladislav Hagara | Komentářů: 0
18.1. 12:11 | Zajímavý článek

V Edici CZ.NIC vyšla kniha CyberSecurity věnovaná problematice kybernetické bezpečnosti, a to především jejím základním principům, které by měl respektovat každý, kdo využívá informační a komunikační technologie. Kniha je ke stažení zcela zdarma pod licenci Creative Commons (CC BY-ND 3.0 CZ) (pdf, epub, mobi).

Ladislav Hagara | Komentářů: 0
18.1. 02:00 | Nová verze

Byla vydána nová stabilní verze 0.92.4 a první alfa verze verze 1.0 svobodného multiplatformního vektorového grafického editoru Inkscape. Přehled novinek v poznámkách k vydání (0.92.4 a 1.0alpha0). Obě verze jsou k dispozici také jako balíčky ve formátu AppImage. Stačí je stáhnout, nastavit právo ke spuštění a spustit.

Ladislav Hagara | Komentářů: 6
Používáte USB Type-C?
 (20%)
 (16%)
 (11%)
 (12%)
 (37%)
 (4%)
 (43%)
Celkem 450 hlasů
 Komentářů: 0
Rozcestník

Dotaz: Bash: Přes HTML <form> vlézt do statistik a stáhnout data

David Watzke avatar 27.4.2006 18:14 David Watzke | skóre: 74 | blog: Blog... | Praha
Bash: Přes HTML <form> vlézt do statistik a stáhnout data
Přečteno: 449×
Ahoj,

předem se omlouvám za titulek :-) Mám HTMLko s <form>ulářem, který mě nahodí do statistik up/down přenosů (Karneval.cz) abych nemusel zadávat heslo... Potřeboval bych jenom vědět, jestli je nějaká možnost propašovat to přes bash a nějak stáhnout :-), pak už bych to zpacoval.
<form action="http://muj.karneval.cz/webmail/" method="post" name="login">
  <input name="logout" type="hidden" value="0">
  <input name="user" type="text" value=";-)" >
  <input name="password" type="password" value=";-)">
  <input type="hidden" name="host" value="mail.karneval.cz" >
  <input type="hidden" name="port" value="993">
  <input type="hidden" name="rootdir" value="">
</form>
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon

Odpovědi

27.4.2006 18:22 tyctor | skóre: 13
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
skus to cez curl -d
27.4.2006 18:25 happy barney | skóre: 34 | blog: dont_worry_be_happy
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
pohladaj si na freshmeate (alebo portage, ak nejake mas) :-)

a skus najst napr pavuk (ten by to zvladat mal), alebo lwp-request (sucast lib-www-perl)

David Watzke avatar 27.4.2006 21:31 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
Děkuju za odpovědi... Pavuk se mi zalíbil, četl jsem manuál, ale nějak na to nemůžu přijít :-( Jestli s tím někdo umíte, můžete sem prosím kopnout příklad použití (pro můj případ)?
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
27.4.2006 21:47 Tomáš | skóre: 30 | blog: Tomik
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
Co takhle wget? Stačí jenom poskládat správný řetězec pro metodu POST.
David Watzke avatar 27.4.2006 21:48 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
No a tady je právě ten zásek :-(
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
27.4.2006 21:57 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
-- Nezdar není hanbou, hanbou je strach z pokusu.
David Watzke avatar 28.4.2006 05:19 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
OK, zkusil jsem:
wget --post-data="login=;-)&password=;-)" \
"http://muj.karneval.cz/"
a pak místo login jsem dal user, ale stejně nic, pak
wget --post-data="login=;-)&password=;-)&logout=0\
&port=993&host=mail.karneval.cz&rootdir=''" "http://muj.karneval.cz/"
taky nic. Stáhne to jen stránku s formulářem k přihlášení.
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
28.4.2006 07:51 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
Wgetem nusíš mířit na http://muj.karneval.cz/webmail/ protože se tam ten formulář posílá.
-- Nezdar není hanbou, hanbou je strach z pokusu.
David Watzke avatar 28.4.2006 13:52 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
To jsem zkoušel, ale stáhne se naprosto totéž :-(
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
David Watzke avatar 18.6.2006 21:11 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
Heh, místo login tam mělo být user, ale přesto stáhnu jen úvodní stránku s webmailem... po přihlášení bych ještě musel nějak přejít do sekce Internet a tak... ale whatever, Pythoní skript je v pohodě :-)
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
27.4.2006 23:27 Pavel1 | skóre: 33
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
Jakej zásek? Já takto (wgetem) tahám přenesená data, seznam hovorů, ... z webů, kam se musím normálně přihlašovat jménem a heslem.
27.4.2006 23:38 pok | skóre: 11
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
Asi by se taky dal pouzit primo prikaz POST (je to nejaky Perl-ovsky script, ve FC4 je to balik perl-libwww-perl)
28.4.2006 08:48 Zdeněk Štěpánek | skóre: 57 | blog: uz_mam_taky_blog | varnsdorf
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
V perlu to jde moc pekne pomoci WWW::Mechanize, ale posledni verze ma tak trochu problem ze na mym serveru segfaultuje, cimz mi pridelala vcelku dost problemu, ale treba to poresi cista instalace nebo balicek pro tvou distribuci. Ja jsem to kompiloval z CPANu.

Wget muze neco vyresit, ale ne vse. Podle me je jen jednorazovy, cili poslu data (POST) a dostanu odpoved. Nic vic nic min, kdyztak me opravdu, rad bych se mylil.

S tim WWW::Mechanize jsem se prihlasil do banky (jmeno heslo), pak jsem zazadal o nejakej strasne dlouhy URL a banka mi vratila vypis z uctu v CVS. Kdyby tohle slo wgetem bylo by to prima.

Zdenek
www.pirati.cz - s piráty do parlamentu i jinam www.gavanet.org - czfree varnsdorf
28.4.2006 09:11 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
Na spoustu věcí by měl wget stačit, prvním wgetem se přihlásíš a uložíš si cookie, druhým stáhneš konkrétní stránku se statistikama s tím, že tomu předhodíš to uložené cookie...
-- Nezdar není hanbou, hanbou je strach z pokusu.
28.4.2006 10:11 Pavel1 | skóre: 33
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
Ano, takto to dělám já. Není vždy nejjednodužší ze stránky vytáhnout příslušná data a cookie, ale dá se to. Určitě se to dá udělat jednodušeji a efektněji pomocí jiných zde naznačených nástrojů (když se to umí), ale i wgetem to jde.
28.4.2006 09:23 Jan Martinek | skóre: 43 | blog: johny | Brno
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
Už se to tu řešilo, viz
Autologing pomocou bash cez http na web, http://www.abclinuxu.cz/forum/show/128078.
Možností je spousta (wget, perl), stačí si vybrat. Já jsem navrhoval python:
http://www.abclinuxu.cz/forum/show/128078#8
Je tam i demo program.
David Watzke avatar 28.4.2006 14:12 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
V Pythonu by to taky bylo pěkný. Doplnil bych to třeba takhle:
values = [
'user', 'Gbgb wr cbxhf.'
'password', 'heslo'
]
jenže to hodí chybu ;-)
Traceback (most recent call last):
  File "./hnoják.py", line 11, in ?
    data = urllib.urlencode(values)
  File "/usr/lib64/python2.4/urllib.py", line 1148, in urlencode
    raise TypeError
TypeError: not a valid non-string sequence or mapping object
a vzhledem k tomu jak je to (na mě) složitý a ještě k tomu když po přihlášení musím přejít na jinou stránku... skoro bych řekl, že to prozatím asi vzdám.
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
28.4.2006 14:49 Jan Martinek | skóre: 43 | blog: johny | Brno
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
Zkus to takhle:
values = {'user':'Gbgb wr cbxhf.', 'password':'heslo'}
Pozor na tu závorku - patří tam složená místo hranaté.
David Watzke avatar 28.4.2006 14:56 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
Vypíše totéž, co stáhne wget... Hodil jsem to sem (v utf-8).
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
28.4.2006 15:28 Jan Martinek | skóre: 43 | blog: johny | Brno
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
Škoda, že neznám jméno a heslo - nemají tam nějaký testovací účet, abych to mohl vyzkoušet? Jo a zkus tam napsat kompletní URL (pokud je to ono).
http://muj.karneval.cz/webmail/index.php
Nevím, proč se to nedaří. Třeba jim vadí user-agent případně referrer. Nebo to bude nějaká ptákovina, která mě teď nenapadá ;-)
29.4.2006 15:14 Jan Martinek | skóre: 43 | blog: johny | Brno
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
Tak nakonec jsme to prostřednictvím mailů vyřešili. Zde je program v pythonu, který ve třech fázích přistupuje na stránku karnevalu. Nejdřív pošle metodou POST jméno a heslo, přičemž v odpovědi dostane cookies pro další autentizaci. Pak stáhne statistiku přenesených dat a na závěr se odloguje. Výstup z programu vypadá takto:
  2006-04-13  Prijate:  660,75 MB  Odeslane:  738,13 MB  Celkem:    1,37 GB
  2006-04-14  Prijate:  376,35 MB  Odeslane:  245,35 MB  Celkem:  621,71 MB
  2006-04-15  Prijate:  915,69 MB  Odeslane:  715,55 MB  Celkem:    1,59 GB
  2006-04-16  Prijate:  886,81 MB  Odeslane:  770,43 MB  Celkem:    1,62 GB
  2006-04-17  Prijate:  480,26 MB  Odeslane:  642,15 MB  Celkem:     1,1 GB
  2006-04-18  Prijate:  984,79 MB  Odeslane:   874,3 MB  Celkem:    1,82 GB
  2006-04-19  Prijate:   555,1 MB  Odeslane:  655,61 MB  Celkem:    1,18 GB
  2006-04-20  Prijate:  488,52 MB  Odeslane:  817,95 MB  Celkem:    1,28 GB
  2006-04-21  Prijate:    1,45 GB  Odeslane:  890,72 MB  Celkem:    2,32 GB
  2006-04-22  Prijate:    1,68 GB  Odeslane:  941,47 MB  Celkem:     2,6 GB
  2006-04-23  Prijate:    1,31 GB  Odeslane:  894,35 MB  Celkem:    2,18 GB
  2006-04-24  Prijate:  391,77 MB  Odeslane:  690,59 MB  Celkem:    1,06 GB
  2006-04-25  Prijate:   381,2 MB  Odeslane:  667,46 MB  Celkem:    1,02 GB
  2006-04-26  Prijate:   63,36 MB  Odeslane:  203,95 MB  Celkem:   267,3 MB
  2006-04-27  Prijate:   59,29 MB  Odeslane:    7,32 MB  Celkem:   66,61 MB
  2006-04-28  Prijate:   99,43 MB  Odeslane:   12,08 MB  Celkem:  111,51 MB
  2006-04-29  Prijate:  303,38 MB  Odeslane:  123,95 MB  Celkem:  427,33 MB
      Celkem  Prijate:   10,93 GB  Odeslane:    9,66 GB  Celkem:   20,59 GB
a zdroják je zde:
#!/usr/bin/env python
import re, cookielib, urllib, urllib2

cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))

url1 = 'http://muj.karneval.cz/webmail/index.php'
values = {'logout':'0', 'user':'1234567', 'password':'nereknu', 'host':'mail.karneval.cz', 'port':'993', 'rootdir':''}
req1 = urllib2.Request(url1, urllib.urlencode(values))
stream1 = opener.open(req1)

url2 = 'http://muj.karneval.cz/internet/traffic.php'
req2 = urllib2.Request(url2)
stream2 = opener.open(req2)
statistics_html = stream2.read()

url3 = 'http://muj.karneval.cz/logout/'
req3 = urllib2.Request(url3)
stream3 = opener.open(req3)

regexp = re.compile(r'([\d|,]+ [M|G|]B)', re.MULTILINE)
traffic_txt = regexp.findall(statistics_html)

regexp = re.compile(r'(\d{4}-\d{2}-\d{2})', re.MULTILINE)
dates_txt = regexp.findall(statistics_html)
dates_txt.append('Celkem')

trf_count = 0
dates_count = 0
for traffic in traffic_txt:
  rem = trf_count % 3
  if rem == 0:
    print '%12s ' %(dates_txt[dates_count]), 
    print 'Prijate: %10s ' %traffic,
    dates_count += 1
  elif rem == 1:
    print 'Odeslane: %10s ' %traffic,
  else:
    print 'Celkem: %10s' %traffic
  trf_count += 1
30.4.2006 13:23 Jan Martinek | skóre: 43 | blog: johny | Brno
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
... a ve svém osobním volnu se doučím regulární výrazy.
Měl jsem to blbě, tady je oprava. Místo původního
regexp = re.compile(r'([\d|,]+ [M|G|]B)', re.MULTILINE)
tam patří
regexp = re.compile(r'(\d+(?:,\d+)?\s+[kKMG]?B)')
30.4.2006 14:23 Pavel1 | skóre: 33
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
Pěkná a inspirativní ukázka řešení v Pythonu. Jen více takovýchto ukázek! Podobné statistiky tahám z webu wgetem a upravuji v bashi.

Zrovna jsem potřeboval použít v bashi něco na překódování odkazu (předpokládám, že je to zde urllib.urlencode(values)). Málem jsem to chtěl použíl, ale našel jsem pro mě jednodužší řešení - příkaz od -A n -t x1.
18.6.2006 19:48 j3nda | skóre: 14 | ostrava/brno
Rozbalit Rozbalit vše Re: Bash: Přes HTML <form> vlézt do statistik a stáhnout data
diky za skript. pythonu sice neholduji, uz jsem mel nacnute prihlasovani pres curl a hazelo mi to: "curl: (56) Received HTTP code 302 from proxy after CONNECT"

a pri laborovani jsem narazil na hotovy skriptik, autorum patri diky :-)
___---==~[ uxunilcba | baclniuxu ]~==---__sevrer_pnly_liunx-lkie_hcaricku__/libGDX-rulez-the-W0R7D!___

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.