Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][cURL] Pobranie zawartość z innej strony - PROBLEM
Forum PHP.pl > Forum > PHP
minister1234
Witam serdecznie. Rozwijam swoją wiedzę na temat PHP i postanowiłem, że zrobię stronkę, na której będę widział np. ilość wyswietlen, subow, like i unlike.


  1. $file = file_get_contents("https://www.youtube.com/watch?v=f92QOvbbVoo");
  2. preg_match('#<span class="yt-uix-button-content">(.+?)<\/span>#s', $file, $operator);
  3. echo $operator[1];


Ładnie na stronie pokazuje mi się ilość wyświetleń, subów a przy ilość LIKE i UNLIKE pokazuje mi się napisać "ZALOGUJ SIĘ". Zalogowałęm się na jakiekolwiek konto na YT i nadal to samo. Myślę, że tutaj problem tkwi w tym, że ten skrypt tak jakby KLIKA w tą łapkę, a nie wyswietla ile łącznie jest otrzymanych łapek. Nie jestem pewny co do tej tezy więc proszę o sprostowanie oraz pomoc w rozwiązaniu tego problemu.

Następnie użyłem cURL:
  1. $ch = curl_init('https://www.youtube.com/watch?v=Tb200g2mlys'); //inicjacja curla
  2. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  3. $zmienna = curl_exec($ch); //pobieranie treści strony
  4. preg_match('#<span class="yt-uix-button-content">(.+?)<\/span>#s', $zmienna, $operator);
  5. echo $operator[1];
  6. curl_close($ch); //zamykanie curla
  7.  


No ale problem cały czas ten sam, wyskakuje napis "ZALOGUJ SIE".
IProSoft
Masz pewność, że wyrażenie regularne jest poprawne ?

Edit: Jest poprawne ale łapie pierwsze wystąpienie, a jest ich dużo więcej w źródle.
minister1234
Jak mam sprecyzować aby złapało to konkretne wyrażenie, które chcę otrzymać ?
patwoj98
A dlaczego nie wykorzystasz YT API dostępnego pod tym linkiem? Tutaj JSONa, którego w prosty sposób możesz odczytać i dostać wszystkie informacje o wiele lepiej, niż pobierając całą stronę.
minister1234
Niestety JSONa nie umiem :/
viking
To się naucz. Nie umiesz zrozumieć całych dwóch funkcji?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.