Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pobieranie ceny paliwa ze strony orlenu ?
Forum PHP.pl > Forum > PHP
mediashark
Witam jak w temacie chciałbym pobrać cenę paliwa ze strony internetowej orlenu i nie wiem jak się za to zabrać. Szukałem na internecie jakiś informacji ale nic nie znalazłem na ten temat więc bardzo prosiłbym o jakieś wskazówki. Z góry dziękuję za odpowiedz.

Poniżej podaję stronę z aktualnymi cenami:
http://www.orlen.pl/PL/DlaBiznesu/HurtoweC...ny/default.aspx

Pozdrawiam smile.gif
pedro84
Podpowiedź: curl smile.gif
blooregard
Musisz pobrać źródło strony i preg_matchem wyciągnąć sobie odpowiednie dane z tych fragmentów:
  1. ...
  2. <tr>
  3. <td><span id="ctl00_ctl00_SPWebPartManager1_g_753cafe9_2be0_414b_aa26_6f746d63d018_ctl00_
    lblFuelNamePb98"
    >
    Benzyna bezołowiowa - Super Plus 98</span></td>
  4. <td><span id="ctl00_ctl00_SPWebPartManager1_g_753cafe9_2be0_414b_aa26_6f746d63d018_ctl00_
    lblPb98Price"
    >
    3 744,00</span>&nbsp;<span id="ctl00_ctl00_SPWebPartManager1_g_753cafe9_2be0_414b_aa26_6f746d63d018_ctl00_
    Label2"
    >
    zł/m<sup>3</sup></span></td>
  5. </tr>
  6. ...
mediashark
A może jakiś przykład do powyższego kodu. Bo nie wiem za bardzo jak użyć preg_matchem.
Pozdrawiam
Pawel_W
a taki problem zajrzeć do manuala i dowiedzieć się do czego ta funkcja służy? ...

http://pl.wikibooks.org/wiki/PHP/Podstawy_...%84_regularnych
Kshyhoo
Myślę, że mediashark chodzi jak wogóle się do tego zabrać.
1. Pobierasz stronę do zmiennej ($strona), np. tak:
  1. <?php
  2. $f = fopen("http://www.orlen.pl/PL/DlaBiznesu/HurtoweCenyPaliw/Strony/default.aspx", "r");
  3. while(!feof($f)) $strona.= fread($f,1024);
  4. fclose($f);
  5. ?>

Ew. można też CURLem:
  1. <?php
  2. $f = curl_init();
  3. curl_setopt($f, CURLOPT_URL, "http://www.orlen.pl/PL/DlaBiznesu/HurtoweCenyPaliw/Strony/default.aspx");
  4. curl_setopt($f, CURLOPT_RETURNTRANSFER, 1);
  5. $strona = curl_exec($f);
  6. curl_close($f);
  7. ?>

2. Potem wyszukujesz interesujący fragment (szuka wystąpień określonego wyrażenia regularnego):
  1. <?php
  2. preg_match("/<span id="ctl00_ctl00_SPWebPartManager1_g_753cafe9_2be0_414b_aa26_6f746d63d018_ctl00_
  3. lblPb98Price">(.*?)<\/span>/is", $strona , $cena);
  4. ?>

Teraz wystarczy sprawdzić, czy wyszukane wyrażenie jest liczbą i ma odpowiednie formatowanie - 3 744,00 (z tym chyba sobie poradzisz sam?).
mediashark
Kshyhoo dzięki WIELKIE smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.