Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 65 Pomógł: 4 Dołączył: 6.09.2007 Ostrzeżenie: (0%)
|
Hej,
Pisze skrypt ktory ma pobierac dane ze strony gpw.pl Chce aby ze strony glownej pobieral on np. informacje odnosnie WIG-u 20 (precentowa zmiane oraz aktualna liczbe punktow). Napsisalem cos takiego:
i dostaje cos takiego:
a chcialbym otrzymywac cos takiego:
najbardziej zalezy mi na tablicy [2][..], reszta moze nie istniec. Gdzie robie blad? W zmiennej $stock_data jest kod html-a, ktory generuje strona (na stronie sa jeszcze znaki nowej linii .... btw. jak to uwzglednic?). Dziekuje za pomoc, pozdrawiam Michal Ten post edytował MiChaSSs 26.05.2009, 20:15:12 |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 1 575 Pomógł: 299 Dołączył: 26.03.2009 Ostrzeżenie: (20%)
|
Kod Array ( [0] => Array ( [0] => WIG20 +0.42% 1 808.68 ) [1] => Array ( [0] => +0.42% ) [2] => Array ( [0] => 1 808.68 ) ) Masz dwie wartości. Moim zdaniem lepiej samemu sformatować potem te wartości. Ten post edytował Wicepsik 26.05.2009, 19:09:25 |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 65 Pomógł: 4 Dołączył: 6.09.2007 Ostrzeżenie: (0%)
|
dziekuje, dokladnie o cos takiego mi chodzilo, ale chcialem jeszcze zapytac o jedna rzecz. Poniewaz linie w html-u
sa praktycznie identycznie, to czy nie mozna w funkcji preg_match_all zapisac odpowiedniego wzoru (cos na taki wzor jak to zrobilem wczesniej) zeby odszukiwal te linie i wrzucal do tablicy odpowiednie wartosci? Ten post edytował MiChaSSs 26.05.2009, 19:44:03 |
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 1 575 Pomógł: 299 Dołączył: 26.03.2009 Ostrzeżenie: (20%)
|
Ten post edytował Wicepsik 26.05.2009, 19:46:48 |
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 65 Pomógł: 4 Dołączył: 6.09.2007 Ostrzeżenie: (0%)
|
hehe (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) nie no wiadomo, myslalem poprostu ze da sie to zalatwic jednym wzorem do preg_match (w sensie jednym wywolaniem preg_match). A i jeszcze jedno, rozumiem, ze wyrazenie [^<]*? jest odpowiedzialne za znak nowej linii. [^<] oznacza ze moze byc wszystko poza znakiem < pozniej gwiazdka oznacza ze moze byc tego nieskonczenie duzo a pozniej pytajnik ze to moze wystepowac raz lub wcale? Nie rozumiem tego, moglbys mi to wytlumaczyc?
Ten post edytował MiChaSSs 26.05.2009, 19:45:44 |
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 1 575 Pomógł: 299 Dołączył: 26.03.2009 Ostrzeżenie: (20%)
|
Kiedyś dostałem skrypt od kolegi z wyrażeniami i jakoś tak zostało. Można to zrobić w jednym zapytaniu.
Jeżeli o to chodzi. Ten post edytował Wicepsik 26.05.2009, 19:57:51 |
|
|
|
Post
#7
|
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów |
Proszę o tag tematu.
|
|
|
|
Post
#8
|
|
|
Grupa: Zarejestrowani Postów: 65 Pomógł: 4 Dołączył: 6.09.2007 Ostrzeżenie: (0%)
|
Nie do konca mialem to na mysli. Chodzilo mi o to, zeby wzor do:
byl uzyty tylko raz w preg_match_all a pozniej zeby dodac + pod koniec wyrazenia, cos na wzor tego co napisalem w 1. poscie: Cytat if(preg_match_all('@<td class="indeksy_nazwa">WIG20</td><td width="[0-9]+" align="[a-zA-Z]+"><[^>]+></td>(<td width="[0-9]+" class="indeksy_wart" align="[a-zA-Z]+">([0-9.%+-\s]+)</td>)+@', $stock_data, $found_data)) { print_r($found_data); } tylko dzialajace (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) ale jesli sie nie da to uzyje tej metody co Ty (bo tez jest dobra). Prosilbym Cie tylko o wytlumaczenie mi tego [^<]*? bo nie czaje jak moze byc * i ? obok siebie . Dokladnie opisalem problem w moim poscie wyzej (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ----- erix -> tag dodany, przepraszam zapomnialem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ten post edytował MiChaSSs 26.05.2009, 20:16:13 |
|
|
|
![]() ![]() |
|
Aktualny czas: 26.12.2025 - 03:00 |