wilq
30.09.2003, 14:45:35
Czy ktos moze mi pomóc, jak pobrać ze strony lotto wyniki losowan na własna strone. NIe wiem czy tu mozna bedzie uzyc funkcji fsockopen()
---------
php >> Skrypty
Seth
scanner
30.09.2003, 15:46:26
IMHO najpierw musisz mieć zgode lotto.pl.
wilq
30.09.2003, 20:30:12
A jezeli oni wysyłają mi wynik na maila. Moze z maila da sie automatycznie wyciągnąc tekst który mi wysyłają. To juz chyba nie jest zabronione.
nobody
30.09.2003, 20:34:52
Cytat
IMHO najpierw musisz mieć zgode lotto.pl.
A moim zdaniem nie. To nie pogoda albo cos, ze jest specjalna ekipa, ktorej placa za badania a ktos kradnie i nawet nie napisze skad ma prognoze...Te wyniki sa codziennie ogolnie dostepne i nikt mu raczej nie udowodni czy zgarnal je ze stronki lotto czy spisal z TV i wklepal na stronke...
GrayHat
30.09.2003, 20:51:19
ja mam taki skrypt. odezwij sie na gg: 1313702 lub mailem grayhat@op.pl
panbobek44
25.02.2011, 17:04:22
Napisałem dla treningu skrypt do pobierania danych ze strony Lotto, ale mam z nim problem. Skrypt jest napisany prymitywnie przez co funkcja fopen otwiera stronę prawie 20000 przez co jest bezużyteczna. Jak to poprawić?
Jeśli skrypt wykonywałby się do końca to już bez problemu wyniki można by zapisywać do bazy.
<?
for($rok = 1957; $rok <= 2011; $rok++) {
for($miesiac = 1; $miesiac <= 12; $miesiac++) {
for($dzien = 1; $dzien <= 31; $dzien++) {
if($dzien < 10) $dzien_0 = '0' . $dzien;
else $dzien_0 = $dzien;
if($miesiac < 10) $miesiac_0 = '0' . $miesiac;
else $miesiac_0 = $miesiac;
$data = $dzien_0 . '-' . $miesiac_0 . '-' . $rok;
$plik_nazwa = 'http://serwis.lotto.pl/183-4acdb422ae884.htm?id_gra=1&sortuj=on&numer=0&data=' . $data;
$plik_uchwyt = fopen($plik_nazwa, 'rb'); if($plik_uchwyt == false) {
}
else {
$plik_tresc = stream_get_contents($plik_uchwyt);
if(strpos($plik_tresc, 'iepoprawny format daty') < 1
) { $plik_tresc = substr($plik_tresc, strpos($plik_tresc, 'cym</a>)</th>') + 18
); $plik_tresc = explode('<tr><th colspan="3">', $plik_tresc); $plik_tresc = $plik_tresc[0];
$plik_tresc = str_replace('<tr><td>', 'x', $plik_tresc); $plik_tresc = str_replace('</td><td>', '|', $plik_tresc); $plik_tresc = str_replace('</td><td class="bold">', '|', $plik_tresc); $plik_tresc = str_replace('</td></tr>', '|', $plik_tresc); }
}
}
}
}
?>
Piogola
25.02.2011, 17:32:16
Po co pobierasz wszystkie wyniki lotto ?
panbobek44
25.02.2011, 22:24:09
Chciałbym je zapisać do MySQL. Akurat nie chodzi mi do końca o lotto tylko chciałbym się dowiedzieć jak to zrobić.
Piogola
25.02.2011, 23:03:08
Zamiast wyświetlać wyniki to zrób zapytanie do bazy
panbobek44
25.02.2011, 23:18:07
Ale nawet po usunięciu 29 linii kodu czyli
echo $plik_tresc; skrypt się nie wykonuje.
Przeglądarka mieli jakiś czas i wyświetla błąd:
Strona internetowa nie została znaleziona
Nie znaleziono strony internetowej pod adresem
http://www....../temp.phpBłąd 6 (net::ERR_FILE_NOT_FOUND): Nie można znaleźć pliku lub katalogu.
Piogola
25.02.2011, 23:46:34
while($data > $zaklad){
$page = file_get_contents('http://serwis.lotto.pl/183-4acdb422ae884.htm?id_gra=1&sortuj=on&numer=0&data='.date('d-m-Y', $zaklad)); preg_match_all('#<td>([0-9]+)</td><td>([0-9\-]+)</td><td class="bold">([0-9, ]+)</td>#', $page, $match); for($i=0;$i<count($match[0]);$i++){
$query[] = '("'.$match[2][$i].'","'.$match[3][$i].'")';
}
echo 'INSERT INTO tabela VALUES '.implode(',', $query).'<br><br><br>'; }
}
Działający i sprawdzony skrypt
panbobek44
26.02.2011, 08:16:05
Niestety ten skrypt dla mnie nic nie zmienia poza sposobem napisania kodu. Wyniki z jednej podstrony też umiem pobrać. Potrzebuję wszystkie wyniki.
Twój skrypt zwrócił tylko:
INSERT INTO tabela VALUES ("1957-01-27","8, 12, 31, 39, 43, 45"),("1957-02-03","5, 10, 11, 22, 25, 27"),("1957-02-10","18, 19, 20, 26, 45, 49"),("1957-02-17","2, 11, 14, 37, 40, 45"),("1957-02-24","8, 10, 15, 35, 39, 49"),("1957-03-03","24, 26, 31, 35, 43, 47"),("1957-03-10","13, 20, 23, 29, 38, 44"),("1957-03-17","8, 13, 15, 22, 38, 47"),("1957-03-24","3, 10, 27, 29, 34, 42"),("1957-03-31","4, 5, 6, 13, 23, 25")
Piogola
26.02.2011, 09:24:20
panbobek44
26.02.2011, 18:10:44
Dziękuję o to mi chodziło. Teraz muszę to przeanalizować i zobaczyć co i jak.