Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Pobieranie danych ze strony
blackD
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 8.11.2006

Ostrzeżenie: (0%)
-----


Witam (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Mam pewien problem :/ mianowicie chce za pomocą php pobrać dane z innej strony
Problem w tym ze dane znajdują się po zalogowaniu.

Podam tu przykład

Chcę pobrać zawartość tej strony http://www.bet-at-home.com/accountBetDetai...etNumber=115194

ale to nie działa :/

używam tego skryptu:

  1. <?php
  2. $url=("http://www.bet-at-home.com/accountBetDetail.aspx?TicketNumber=115194");
  3. $tresc= file_get_contents($url);
  4.  
  5. $plik=fopen("dane.txt", "w+");
  6. fwrite($plik, $tresc);
  7. fclose($plik);
  8. ?>


ale to nie działa :/ bo się łączy strony jako niezalogowany
i co za tym idzie.. pobrane zostaną ze strony starowej

http://www.bet-at-home.com/start.aspx

------------------------------------------------------------

Jeśli ktoś z was ma pomysł jak to zrobić to będę bardzo wdzięczny

Pozdrawiam


tak tez robilem :
  1. <?php
  2. $domena = 'www.bet-at-home.com';
  3. $plik = '/accountBetDetail.aspx?TicketNumber=115199';
  4. if ($fp = fsockopen($domena, 80)) {
  5. $data = "GET $plik HTTP/1.1rn";
  6. $data .= "Host: $domenarn";
  7. $data .= "Connection: Closernrn";
  8. fputs($fp, $data);
  9. $data = '';
  10. while (strlen($buf = fread($fp, 1024))) $data .= $buf;
  11. fclose($fp);
  12. $data = substr($data, strpos($data, "rnrn") + 4);
  13. if ($fp = fopen('dane.txt', 'w')) fputs($fp, $data);
  14. }
  15. ?>


ale nie dziala

i jeszcze jedno.. jesli ktos by chcial pomoc i samemu sprawdzic to na bet-at-home jest mozliwosc logowania za pomoca gościa (bez hasla)


Juz od kilku dni sie z tym mecze :/ na 4p nikt nie mogl pomoc..na jamie i kilku innych serwisach :/ juz nie mam sil.. moze ktos z was mi pomoze

Pozdrawiam i dziękuję
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
tiraeth
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Nie, nie można tak zrobić...

Jedyny sposób to wysłanie nagłówków CURLem z pseudo logowaniem a dopiero potem pobranie strony.
Go to the top of the page
+Quote Post
blackD
post
Post #3





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 8.11.2006

Ostrzeżenie: (0%)
-----


Cytat(tiraeth @ 21.11.2006, 08:17:04 ) *
Nie, nie można tak zrobić...

Jedyny sposób to wysłanie nagłówków CURLem z pseudo logowaniem a dopiero potem pobranie strony.



zrobilem tak ja mowisz.. alte ten sposob nie dziala :/

  1. <?php
  2.  $bet_at_home_login = "xxxxx";
  3.  $bet_at_home_pass = "xxxxx";
  4.  $cookie_file_path = "cookies/";
  5.  
  6.  
  7.  $LOGINURL = 'http://www.bet-at-home.com/start.aspx?logout=true';
  8.  $agent = 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)';
  9.  $ch = curl_init();
  10.  curl_setopt($ch, CURLOPT_URL,$LOGINURL);
  11.  curl_setopt($ch, CURLOPT_USERAGENT, $agent);
  12.  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  13.  curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
  14.  curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file_path);
  15.  curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file_path);
  16.  $result = curl_exec ($ch);
  17.  
  18.  curl_close ($ch);
  19.  
  20.  
  21.  $LOGINURL = 'http://www.bet-at-home.com/start.aspx?logout=true';
  22.  $POSTFIELDS = "__EVENTTARGET=&__EVENTARGUMENT=& amp;__VIEWSTATE=dDwtMTU0MTI3MTY0NDt0PDtsPGk8MT47PjtsPHQ8O2w8aTwxPjtpPDE5Pjt
    pPDIz
  23. Pjs%2BO2w8dDw7bDxpPDA%2BOz47bDx0PDtsPGk8MTU%2BO2k8MTk%2BO2k8MjE%2BO2k8MjM%2BO2k8MjU%2BO2k8Mzk%2BO2k8NDE%2BO2k8NDM%2BO2k8NDU% 2BOz47bDx0PHA8cDxsPFZpc2libGU7PjtsPG88dD47Pj47Pjs7Pjt0PHA8cDxsPFRleHQ7PjtsPDEyN
    D
  24. I4NzQ0Oz4%2BOz47Oz47dDxwPGw8VmlzaWJsZTs%2BO2w8bzxmPjs%2BPjs7Pjt0PHA8cDxsPFRleHQ7PjtsPDExNjgsMDAgUExOOz4%2BOz47Oz47dDxwPHA8bDxWaXNpYmxlOz47bDxvPGY%2BOz4%2BOz47Oz47dDxwPHA8bDxDb21tYW5kTmFtZTtDb21tYW5kQXJndW1lbnQ7PjtsPGRvTG9naW47Njs%2BPjs%2BOzs%2BO3Q8cDxwPGw8VGV4dDs%2BO2w8TW9qZSBrb250byBncmFjemE7Pj47Pjs7Pjt0PHA8bDxWaXNpYmxlOz47bDxvPGY%2BOz4%2BOzs%2BO3Q8cDxwPGw8VmlzaWJsZTs%2BO2w8bzxmPjs%2BPjs%2BOzs%2BOz4%2BOz4%2BO3Q8cDxwPGw8VmlzaWJsZTs%2BO2w8bzxmPjs%2BPjs%2BOzs% 2BO3Q8dDxwPHA8bDxEYXRhVmFsdWVGaWVsZDtEYXRhVGV4dEZpZWxkOz47bDxMYW5ndWFnZUNvZGU7V
    H
  25. JhbnNsYXRlZFRleHQ7Pj47cDxsPG9uY2hhbmdlOz47bDxpZiAob25TdGFydFN1Ym1pdCgpID09IHRydW
  26. UpIDs% 2BPj47dDxpPDEyPjtAPERldXRzY2g7RW5nbGlzaDtJdGFsaWFubztFc3Bhw7FvbDvOlc67zrvOt869z
    r
  27. nOus6sO1BvbHNraTtTbG92ZW7FocSNaW5hO1TDvHJrw6dlO8SMZcWhdGluYTtNYWd5YXI7TmVkZXJsYW
  28. 5kczvQkdGK0LvQs9Cw0YDRgdC60Lg7PjtAPERFO0VOO0lUO0VTO0VMO1BMO1NMO1RSO0NTO0hVO05MO0
  29. JHOz4%2BO2w8aTw1Pjs%2BPjs7Pjs%2BPjs% 2BPjtsPEhlYWRlcjpidG5TcG9ydDtIZWFkZXI6YnRuQ2FzaW5vO0hlYWRlcjpidG5Qb2tlcjtidG5DY
    X
  30. Npbm87Pj60vsDbFHvtvWC6onD%2B7lR6%2FponmQ%3D%3D&Header%3AfldUserSetting=1280x1024x32&Header%3AtbKontoNr=$bet_at_home_login&Header%3AtbPin=$bet_at_home_pass&Header%3AbtnLogin=Zaloguj+si%C4%99&DropDownLangSelect=PL";
  31.  $reffer = 'http://www.bet-at-home.com/start.aspx?logout=true';
  32.  $ch = curl_init();
  33.  curl_setopt($ch, CURLOPT_URL,$LOGINURL);
  34.  curl_setopt($ch, CURLOPT_USERAGENT, $agent);
  35.  curl_setopt($ch, CURLOPT_POST, 1);
  36.  curl_setopt($ch, CURLOPT_POSTFIELDS,$POSTFIELDS);
  37.  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  38.  curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
  39.  
  40.  curl_setopt($ch, CURLOPT_REFERER, $reffer);
  41.  curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file_path);
  42.  curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file_path);
  43.  
  44.  $result = curl_exec ($ch);
  45.  curl_close ($ch);
  46.  
  47. $plik=fopen("dane.txt", "w+");
  48. fwrite($plik, $result);
  49. fclose($plik);
  50.  
  51. ?>
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 19:50