![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 1 Dołączył: 28.10.2008 Ostrzeżenie: (20%) ![]() ![]() |
Podaję kod HTML
Cytat <TD ALIGN='right'>1. </TD> <TD> <A NAME='[b]bezradny[/b]'></A><A HREF='search.php?name=bezradny&' target='_blank'> bezradny</A> </TD> <TD ALIGN='right'> 1929 </TD> Jak wyciągnąć za pomocą file_get_contents i preg_match dane 1. , bezradny , 1929 ?
Coś takiego wykombinowałem. Nie wiem, poradźcie coś. |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Nie wiem, poradźcie coś. Ja ci polecam zajrzec do manuala i nie pisac takich glupot na chybil trafil. Mialem juz ci podac rozwiązanie, ale jak zobaczylem te linijke Cytat preg_match($page, $name, $page); To mi sie odechcialo. Totalne olejstwo z twojej strony... -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 1 Dołączył: 28.10.2008 Ostrzeżenie: (20%) ![]() ![]() |
Pomyłka. Uczę się dopiero robić w php... Niby wszyscy każą przeczytać manual ale tam nie ma konkretnych przykładów.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 82 Pomógł: 18 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
w tym przypadku jasno jak wol masz napisane w manualu ktory parametr jest czym w preg_match() wiec daruj sobie te teksty
jesli by to byla naprawde "pomylka" to bys po 5 minutach sam poprawil sobie kod a nie lecial z takim preg_match() na forum -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 1 Dołączył: 28.10.2008 Ostrzeżenie: (20%) ![]() ![]() |
Po przeczytaniu nadal nic nie wiem. Jeżeli jesteś taki dobry to pomóż
![]() |
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
no to pokaz kod jaki masz po przeczytaniu tego co miales przeczytac.
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 1 Dołączył: 28.10.2008 Ostrzeżenie: (20%) ![]() ![]() |
kod strony Nic na stronie się nie pojawia |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
Kod $page = file_get_contents("http://armia.toproste.pl/stats.php");
$name = '/([0-9.]+?) <\/TD>[^<]*?<TD> <a name=[^>]+?><\/a><A HREF=[^>]+?> ([^<]+?)<\/A> <\/TD>[^<]*?<TD[^;]+?;([0-9]+?) <\/TD>/i'; preg_match_all($name, $page, $matches); $do=count($matches[1]); for($i=0;$i<$do;++$i){ echo $matches[1][$i].' - '.$matches[2][$i].' - '.$matches[3][$i].'<br/>'; } -------------------- Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 1 Dołączył: 28.10.2008 Ostrzeżenie: (20%) ![]() ![]() |
@up
Dzięki. Mam inne pytanie. Jak zrobić by było http://armia.toproste.pl/search.php?name=[do 200 wyników] I wyciągało z tego dane I dodawało tak: 1. - Sarumar - 1929 - 119306687913 2. - Abu Hamza al Muhadzir - 1811 - cyfry 3. - Neko Knight - 1782 - cyfry 4. - Woder Bone - 1736 - cyfry |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
zanim wypróbujesz rozwiązanie to przede wszystkim rada żebyś to zrzucił do jakiejś bazy danych bo nieźle łącza pociągniesz ;p (dobrze by było to ściągać przez curl'a z ustawiona kompresją stron ale;p)
i żeby nie było, że skrypcik nie działa to najpierw wyświetl tylko 10 wyników (a i tak trzeba na nie czekać): Kod $page = file_get_contents("http://armia.toproste.pl/stats.php"); $name = '/([0-9.]+?) <\/TD>[^<]*?<TD> <a name=[^>]+?><\/a><A HREF=[^>]+?> ([^<]+?)<\/A> <\/TD>[^<]*?<TD[^;]+?;([0-9]+?) <\/TD>/i'; preg_match_all($name, $page, $matches); $ht='http://armia.toproste.pl/search.php?name='; $name = '/Experience:<\/td>\s+?<td width="50%">([0-9]+?)<\/td>/i'; for($i=0;$i<10;++$i){ $page = file_get_contents($ht.urlencode($matches[2][$i])); preg_match($name, $page, $match); echo $matches[1][$i].' - '.$matches[2][$i].' - '.$matches[3][$i].' - '.$match[1].'<br/>'; } dla całej pętli nie chciało mi się czekać na rezultat ;p - ale prawidłowe rozwiązanie bez ograniczeń wygląda tak: Kod $page = file_get_contents("http://armia.toproste.pl/stats.php"); $name = '/([0-9.]+?) <\/TD>[^<]*?<TD> <a name=[^>]+?><\/a><A HREF=[^>]+?> ([^<]+?)<\/A> <\/TD>[^<]*?<TD[^;]+?;([0-9]+?) <\/TD>/i'; preg_match_all($name, $page, $matches); $ht='http://armia.toproste.pl/search.php?name='; $name = '/Experience:<\/td>\s+?<td width="50%">([0-9]+?)<\/td>/i'; $do=count($matches[1]); for($i=0;$i<$do;++$i){ $page = file_get_contents($ht.urlencode($matches[2][$i])); preg_match($name, $page, $match); echo $matches[1][$i].' - '.$matches[2][$i].' - '.$matches[3][$i].' - '.$match[1].'<br/>'; } jednym słowem pasuje zmodyfikować skrypcik żeby przynajmniej dane wrzucić odrazu do jakiejkolwiek bazy danych, mysql, sqlite czy choćby do zwykłego notatnika... Ten post edytował zegarek84 15.02.2009, 03:26:25 -------------------- Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 01:00 |