![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 43 Pomógł: 0 Dołączył: 20.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
witam, mam problem z funkcja preg_match, chce pobrac dane ze strony, dokladnie chodzi o dane:
<div class="costam"> dane do pobrania </div> dane te sa w kilkunastu linijkach
cos takiego nie dziala ;/ |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 374 Pomógł: 149 Dołączył: 1.03.2006 Ostrzeżenie: (0%) ![]() ![]() |
A nie brakuje Ci '\' przed nawiasami trójkątnymi?
Poza tym powinno być *? a nie * A poza tym co to znaczy, że nie działa. Nic nie zwraca? Źle zwraca? |
|
|
![]()
Post
#3
|
|
Developer Grupa: Moderatorzy Postów: 3 045 Pomógł: 290 Dołączył: 20.01.2007 ![]() |
Strasznie kombinujecie.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 873 Pomógł: 152 Dołączył: 9.04.2006 Skąd: Berlin Ostrzeżenie: (0%) ![]() ![]() |
webdice, modyfikator "s" i "i" były raczej przydatne. Zgaduję, bo nie widzimy kodu z jakiego to ma zostać pobrane, ale w większości jest potrzebne. Wydaje mi się że np jest <div[2 spacje]class= i dlatego nie łapie.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 43 Pomógł: 0 Dołączył: 20.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
taka postac
zwraca mi tylko pierwsza linijke w tym divie |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 873 Pomógł: 152 Dołączył: 9.04.2006 Skąd: Berlin Ostrzeżenie: (0%) ![]() ![]() |
zamień preg_match na preg_match_all (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 43 Pomógł: 0 Dołączył: 20.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
niestety to samo, w tresci jest tez sporo innych div`ow
tresc - przyklad
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 1 Dołączył: 1.02.2004 Skąd: warszawa Ostrzeżenie: (0%) ![]() ![]() |
Ja do wyciągania powtarzających się danych używam preg_match_all:
Kod preg_match_all("|<div class=\"costam\">([^<]*?)</div>|",$zrodlo,$dane); Zwróci Ci to: $dane[1][0]="pierwsze wystąpienie" $dane[1][1]="drugie wystąpienie" $dane[1][2]="trzecie wystąpienie" |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 43 Pomógł: 0 Dołączył: 20.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
niestety ale nic mi nie zwrocilo ;/
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 1 Dołączył: 1.02.2004 Skąd: warszawa Ostrzeżenie: (0%) ![]() ![]() |
to zmień ([^<]*?) na (.*?) , bo założyłem, że tam będzie tylko text, a nie html
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 43 Pomógł: 0 Dołączył: 20.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
dalej nic...
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 1 Dołączył: 1.02.2004 Skąd: warszawa Ostrzeżenie: (0%) ![]() ![]() |
A zależy Ci na załamaniach tekstu, czy może być ciurkiem w 1 linijce?
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 43 Pomógł: 0 Dołączył: 20.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
moze byc ciurkiem aby zebralo dene z dokladnie z tego diva, probowalem roznych kombinacji ale pobiera cala strone, a tego nie chce...
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 1 Dołączył: 1.02.2004 Skąd: warszawa Ostrzeżenie: (0%) ![]() ![]() |
Ja w swoim skrypcie dane wejściowe filtruję:
Kod $response=str_replace(array("\n", "\r", "\t",), '', $response); Dzięki czemu otrzymuję tekst bez nowych linii, oraz powtórzonych spacji i tabulatorów... Ten post edytował danek 5.11.2008, 21:54:19 |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 43 Pomógł: 0 Dołączył: 20.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
okej ale to dalej nie pomaga w otrzyaniu danych z tego okreslonego div`a
|
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 1 873 Pomógł: 152 Dołączył: 9.04.2006 Skąd: Berlin Ostrzeżenie: (0%) ![]() ![]() |
Coś ty musisz robić źle... Pokaż no cały kod.
|
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 43 Pomógł: 0 Dołączył: 20.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 1 Dołączył: 1.02.2004 Skąd: warszawa Ostrzeżenie: (0%) ![]() ![]() |
Mi daje: czyli:
Ten post edytował danek 6.11.2008, 21:11:07 |
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 43 Pomógł: 0 Dołączył: 20.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
ale chodzi o kod z diva: <div id="item-desc" class="clearfix"> kod </div>, czyli wszystko od poczatku do konca co podalem wyzej, to jest wycinek ze strony http://warszawa.olx.pl/drukarka-oki-3320-n...tp-iid-15308669, dokladnie chodzi mi o pobranie tresci ogloszenia.
|
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 1 Dołączył: 1.02.2004 Skąd: warszawa Ostrzeżenie: (0%) ![]() ![]() |
no to w tym momencie musisz na stronie znaleźć 2 charakterystyczne punkty, które się nie powtarzają, po czym wycinasz text spomiędzy nich i go parsujesz...
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 12:28 |