Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> curl
kondzio18
post 1.02.2015, 12:22:04
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 1.02.2015

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


Witam, próbuję pobrać link video ze źródła strony (np. http://s904.vshare.io/download,99999999999...dec,a35e03e.flv, w którym znajduje się token) vShare.io (np. http://vshare.io/d/a35e03e).

  1. $ch = curl_init('http://vshare.io/d/a35e03e');
  2. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  3. $wejscie = curl_exec($ch);
  4. curl_close($ch);
  5. preg_match_all('/(http|https|ftp|ftps)\:\/\/[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(\/\S*)?/', $wejscie, $wyjscie);
  6. print_r($wyjscie);


print_r znajduje link wraz z tokenem, ale gdy wkleje go w adresie przeglądarki to nic się nie dzieje. (nie zaczyna się pobieranie, tylko przenosi do strony głównej http://vshare.io/d/a35e03e). Chciałbym podkreślić, że na serwerze lokalnym normalnie rozpoczyna się pobieranie :/ Ma ktoś jakiś pomysł ?

Ten post edytował kondzio18 1.02.2015, 12:23:02
Go to the top of the page
+Quote Post
untorched
post 1.02.2015, 12:46:46
Post #2





Grupa: Zarejestrowani
Postów: 318
Pomógł: 76
Dołączył: 27.12.2011
Skąd: Dąbrowa Górnicza

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


  1. <?php
  2.  
  3. $ch = curl_init('http://vshare.io/d/a35e03e');
  4. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  5. $wejscie = curl_exec($ch);
  6. curl_close($ch);
  7. preg_match_all('/(http|https|ftp|ftps)\:\/\/[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(\/\S*).flv?/', $wejscie, $wyjscie);
  8.  
  9. echo '<a href="'.$wyjscie[0][0].'">Pobierz</a>';


U mnie to działa, po kliknięciu w pobierz normalnie rozpoczyna się pobieranie.
Go to the top of the page
+Quote Post
kondzio18
post 1.02.2015, 12:49:48
Post #3





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 1.02.2015

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


Cytat(untorched @ 1.02.2015, 12:46:46 ) *
  1. <?php
  2.  
  3. $ch = curl_init('http://vshare.io/d/a35e03e');
  4. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  5. $wejscie = curl_exec($ch);
  6. curl_close($ch);
  7. preg_match_all('/(http|https|ftp|ftps)\:\/\/[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(\/\S*).flv?/', $wejscie, $wyjscie);
  8.  
  9. echo '<a href="'.$wyjscie[0][0].'">Pobierz</a>';


U mnie to działa, po kliknięciu w pobierz normalnie rozpoczyna się pobieranie.


A jesteś na lokalnym serwerze (np. xaamp), czy używasz hosting publiczny tj. cba lub hostinger.pl ?
Go to the top of the page
+Quote Post
untorched
post 1.02.2015, 12:55:13
Post #4





Grupa: Zarejestrowani
Postów: 318
Pomógł: 76
Dołączył: 27.12.2011
Skąd: Dąbrowa Górnicza

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


Lokalny, debian apache2.22 + php5.4. Twoim problemem nie jest przypadkiem brak dostępu do curl na zewnętrznym serwerze?

Edit:

Ewentualnie strona generuje ten token dla IP z curla, czyli dla serwera smile.gif

Ten post edytował untorched 1.02.2015, 12:57:14
Go to the top of the page
+Quote Post
kondzio18
post 1.02.2015, 12:57:12
Post #5





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 1.02.2015

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


Jak testowałem na xaampie to normalnie mi pobierało, ale jak przeniosłem na hostinger.pl to już przenosi tylko na stronę główną pliku.

Cytat(untorched @ 1.02.2015, 12:55:13 ) *
Lokalny, debian apache2.22 + php5.4. Twoim problemem nie jest przypadkiem brak dostępu do curl na zewnętrznym serwerze?


W jaki sposób mogę to sprwadzić? Wydaje mi się, że chyba mam dostęp jak pobiera informacje ze źródła strony. Może to jakieś zabezpieczenie ze strony vshare.io?
Go to the top of the page
+Quote Post
untorched
post 1.02.2015, 12:58:19
Post #6





Grupa: Zarejestrowani
Postów: 318
Pomógł: 76
Dołączył: 27.12.2011
Skąd: Dąbrowa Górnicza

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


Skoro print_r zwraca Ci dane bez żadnego błędu to curl działa. Prawdopodobnie teoria z update wcześniejszego postu smile.gif
Go to the top of the page
+Quote Post
kondzio18
post 1.02.2015, 13:01:26
Post #7





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 1.02.2015

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


Czyli jakiegoś skutecznego sposobu na ten moment nie ma :/ Dzięki za pomoc smile.gif
Go to the top of the page
+Quote Post
untorched
post 1.02.2015, 13:05:43
Post #8





Grupa: Zarejestrowani
Postów: 318
Pomógł: 76
Dołączył: 27.12.2011
Skąd: Dąbrowa Górnicza

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


Z poziomu klienta pobierz kontent strony, prześlij go do serwera, który to przemieli i zwróci link.

Ten post edytował untorched 1.02.2015, 13:06:04
Go to the top of the page
+Quote Post
kondzio18
post 1.02.2015, 13:10:47
Post #9





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 1.02.2015

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


Trochę ciężko mi to zrozumieć, mógłbyś mi to wyjaśnić jakoś na przykładzie ?

1. Pobieram link z kodu źródłowego strony
2. [..]
Go to the top of the page
+Quote Post
untorched
post 1.02.2015, 13:33:19
Post #10





Grupa: Zarejestrowani
Postów: 318
Pomógł: 76
Dołączył: 27.12.2011
Skąd: Dąbrowa Górnicza

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


Kombinuj, szukaj.

Tu masz przykład pobierania przez serwer.

  1. <?php
  2.  
  3. $ch = curl_init('http://vshare.io/d/a35e03e');
  4. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  5. $wejscie = curl_exec($ch);
  6. curl_close($ch);
  7. preg_match_all('/(http|https|ftp|ftps)\:\/\/[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(\/\S*).flv?/', $wejscie, $wyjscie);
  8.  
  9. header('Content-Type: application/octet-stream');
  10. header("Content-Transfer-Encoding: Binary");
  11. header("Content-disposition: attachment; filename=\"file.flv\"");
  12.  
  13. readfile($wyjscie[0][0]);


Ale nie nadaje się to raczej na darmowe serwery ^^

Ten post edytował untorched 1.02.2015, 13:34:01
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 Wersja Lo-Fi Aktualny czas: 10.07.2025 - 04:41