Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Curl i wyrażenia regularne
Otto
post
Post #1





Grupa: Zarejestrowani
Postów: 144
Pomógł: 7
Dołączył: 22.03.2010

Ostrzeżenie: (0%)
-----


Witam postanowiłem spróbować wyciągnąć dane z przykładowej strony ale napotkałem problem...

  1. $curl = curl_init();
  2. curl_setopt($curl, CURLOPT_URL, "http://diff-anime.pl/index.php");
  3. curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  4. $strona = curl_exec($curl);
  5. preg_match_all("/<div class='ostatnio_dodane odbg'>(.*?)<\/div><\/div>/", $strona, $wyniki);
  6. print_r($wyniki);
  7. curl_close($curl);


Zwracane wyniki to
  1. (
  2. [0] => Array
  3. (
  4. )
  5.  
  6. [1] => Array
  7. (
  8. )
  9.  
  10. )


Jednak nie wiem w czym problem... Takie dane na pewno istnieją na tej stronie.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Czy tak cięzko zrobić:
var_dump($strona);
by się upewnić czy oby na pewno jest tam to co być powinno?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Otto
post
Post #3





Grupa: Zarejestrowani
Postów: 144
Pomógł: 7
Dołączył: 22.03.2010

Ostrzeżenie: (0%)
-----


var_dump($strona) zwraca mi
  1. string(0) ""
ale niestety to nic mi nie mówi a w manualu nic nie piszę bądź nie rozumiem tego...
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




No skoro $strona nic nie zawiera to znaczy że to nie jest wina wyrażenia regularnego, tak? I już wiesz gdzie szukać błędu
W tej chwili nie jest błędem wyrażenie regularne a fakt, że cur zwraca ci pusty tekst zamiast treści strony - tu masz szukać błędu.

Wchodząc na Twoją stronę zostajemy przekierowani z index.php na news.php - dlatego curl zwraca ci pustkę bo ty nie idziesz za przekierowaniem.
Nie możesz od razu odwoływać się do news?

Odwołując się od razu do news.php zamiast do index.php i dodając modyfikator s chyba działa:
  1. $curl = curl_init();
  2. curl_setopt($curl, CURLOPT_URL, "http://diff-anime.pl/news.php");
  3. curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  4. $strona = curl_exec($curl);
  5. preg_match_all("/<div class='ostatnio_dodane odbg'>(.*?)<\/div><\/div>/s", $strona, $wyniki);
  6. print_r($wyniki);
  7. curl_close($curl);


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Otto
post
Post #5





Grupa: Zarejestrowani
Postów: 144
Pomógł: 7
Dołączył: 22.03.2010

Ostrzeżenie: (0%)
-----


A no tak biggrin.gif Dzięki bardzo
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 13:44