![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 8.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam. Czy ktos z forumowiczow walkowal ten temat? Potrzebuje stworzyc na wlasne potrzebny taki automato do logowania sie i pobierania wyciagu z danego okresu celem dalszej obrobki. Napisalem kawalek kodu, ale za cholere nie chce dzialac. kiedys pisalem do pkointeligo i dzialalo bez problemu, do mbanku dobrac sie nie moge :-(
mam takie cus. Mysle, ze strony obrobilem wszystkie dane, nie wiem co z info z ciastkami. Czy jest jakis sposob zeby przesledzic dokladniej, co i jak po kolei? Kod <?php
function pobierz_zaw($url) { $czytaj = curl_init(); curl_setopt ($czytaj, CURLOPT_URL, $url); curl_setopt ($czytaj, CURLOPT_HEADER, false); curl_setopt($czytaj, CURLOPT_SSL_VERIFYPEER, false); //SSL curl_setopt($czytaj, CURLOPT_COOKIEFILE, dirname(__FILE__) . '/cookies1.txt'); curl_setopt($czytaj, CURLOPT_COOKIEJAR, dirname(__FILE__) . '/cookies2.txt'); ob_start(); curl_exec ($czytaj); curl_close ($czytaj); $file = ob_get_contents(); //print $file; ob_end_clean(); return $file; } function formularz_logowanie($url,$nsid, $nstate, $nvalid, $akt_data) { $czytaj = curl_init(); $curlPost = array(); $curlPost['customer'] = ' '; $curlPost['password'] = ' '; $curlPost['__EVENTVALIDATION'] = $nvalid; $curlPost['seed'] = $nsid; $curlPost['localDT'] = $akt_data; $curlPost['__PARAMETERS'] = ''; $curlPost['sCounter'] = '0'; $curlPost['__STATE'] = $nstate; $curlPost['__VIEWSTATE'] = ''; $curlPost['menu'] = 'true'; $user_agent = "Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9) Gecko/2008052906 Firefox/3.0"; curl_setopt ($czytaj, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt ($czytaj, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($czytaj, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($czytaj, CURLOPT_POST, 1); curl_setopt($czytaj, CURLOPT_FAILONERROR, true); curl_setopt($czytaj, CURLOPT_POSTFIELDS, $curlPost); curl_setopt($czytaj, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($czytaj, CURLOPT_USERAGENT, $user_agent); curl_setopt ($czytaj, CURLOPT_URL, $url); curl_setopt($czytaj, CURLOPT_COOKIEFILE, dirname(__FILE__) . '/cookies1.txt'); curl_setopt($czytaj, CURLOPT_COOKIEJAR, dirname(__FILE__) . '/cookies2.txt'); ob_start(); $data = curl_exec ($czytaj); curl_close ($czytaj); $file = ob_get_contents(); ob_end_clean(); print $data; return $file; } $url='https://www.mbank.com.pl/'; $logowanie = pobierz_zaw($url); preg_match("/name=\"seed\" id=\"seed\" value=\"(.*?)\" \/>/", $logowanie, $sid); $nsid = $sid[1]; preg_match("/name=\"__EVENTVALIDATION\" id=\"__EVENTVALIDATION\" value=\"(.*?)\" \/>/", $logowanie, $valid); $nvalid = $valid[1]; preg_match("/name=\"__STATE\" id=\"__STATE\" value=\"(.*?)\" \/>/", $logowanie, $state); $nstate = $state[1]; $akt_data = date("Y-m-d H:i"); $zalogowany = formularz_logowanie($url,$nsid, $nstate, $nvalid, $akt_data); print $zalogowany; ?> Ten post edytował Spoky 13.07.2008, 16:13:05 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 8.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Chyba nie dam rady, bez pomocy, za cienki jestem. Poza tym przydaloby sie jeszcze cos do sledzenia zmiana na bierzaco... Wiec tak
Kod https://www.mbank.com.pl/ GET / HTTP/1.1 Host: www.mbank.com.pl User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1.15) Gecko/20080623 Firefox/2.0.0.15 Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5 Accept-Language: pl,en-us;q=0.7,en;q=0.3 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-2,utf-8;q=0.7,*;q=0.7 Keep-Alive: 300 Connection: keep-alive Cookie: mb-logout=3; mBankLang1140=P; mBank1=TEMP42028753652D9D994A72541F7F8CF80F; wnd=notset; mBank2=OBMeE6x29_vxJ1BCmz7ufw== HTTP/1.x 200 OK Cache-Control: pre-check=0 Keep-Alive: timeout=3, max=993 Pragma: no-cache Content-Length: 15978 Content-Type: text/html; charset=iso-8859-2 Expires: Mon, 26 Jul 1997 05:00:00 GMT X-Powered-By: ASP.NET X-AspNet-Version: 2.0.50727 Set-Cookie: mBank1=TEMP5D6E0DEF64096A386CF0542E3AB065DA; path=/; secure Set-Cookie: mBankLang1140=P; expires=Sat, 09-Apr-2011 18:40:24 GMT; path=/ Server: mBank Web Server Date: Sun, 13 Jul 2008 18:40:24 GMT Nie znam sie na ciastkach, ale curl_setopt($czytaj, CURLOPT_COOKIEFILE, dirname(__FILE__) . '/cookies1.txt') zapisuje mi Kod www.mbank.com.pl FALSE / TRUE 0 mBank1 TEMP385BD4B494D095F037BD68B7BEBD7AE6 www.mbank.com.pl FALSE / FALSE 1302363451 mBankLang1140 P Tylko co dalej z tym. Byc moze sa to kluczowe dane. Jak pisalem wyzej, wszystkie pola hidden, ktore sa ustawiane po zaladowaniu strony logowania orzymuja jakies wartosci maja te wartosci przypisane. Czyli otwiera, wyszukuje wartosci, nadaje zmiennym w form te wartosci i wysylam. Przypuszczam, ze javascript i cookie tez ma tu cos do powiedzenia. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 17.10.2025 - 22:47 |