X
ďťż

[PHP] Download plików z sieci na serwer

       

Podstrony


telcocafe

Witam!

Napisałem prosty programik w php parsujący stronę w poszukiwaniu linka i ściągający PDF'y z archiwum www.mt.com.pl/archiwum/.

Jestem początkujący w PHP, z pomocą tego forum znalazłem sposób na sciaganie plików - file_put_contents i file_get_contents.
Sposób sprawdzał się w przypadku plików GIF, ale ściąga PDF'y których nie mogę otworzyć. "Program" pracuje na Ubuntu z serwerem LAMP. Oto kod:

<?php for ($i=1; $i<=5; $i++) { $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, "http://mt.com.pl/?id=12&ar=wsp&art=$i"); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $strona = curl_exec($curl); curl_close($curl); preg_match_all('</archiwum/.*.pdf>', $strona, $out); $adresy[$i] = substr($out[0][0], 10); echo $adresy[$i]."\n"; echo '=> '.$adresy[$i]."\n"; file_put_contents('arch/'.$adresy[$i], file_get_contents('http://mt.com.pl/archiwum/'.$adresy[i])); } ?>

Możliwe, że w kodzie jest wiele błędów, więc proszę o pomoc w znalezieniu ich i powodu dla którego źle ściąga pliki.
Z góry dzieki za wszystkie mniej lub bardziej pomocne odpowiedzi ;).



To się nazywa skrypt. Co ten skrypt wyświetla w pliku, który ściągasz? Bo być może jest tam kod błędu...
// Edytowano
@niżej:
A może jest jakaś blokada jak w Wikipedii?...
Użytkownik andrzej_aa edytował ten post 11 sierpień 2008, 17:39
jedno pytanie po co mieszac uzycie curl i file_get_contnent ?

@andrzej_aa dzięki za podpowiedź okazalo sie ze skrypt sciaga pliki html z rozszerzeniem *.pdf.
A powodem tego było http://mt.com.pl/archiwum/'.$adresy[$i]. ($ przy I)
@beldzio rzeczywiście mógłbym wszystko zrobić z curlem lub file_get_content. nie ma tam zadnych blokad ;) dzięki
Użytkownik Linux--User edytował ten post 19 sierpień 2008, 12:05
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.

    Drogi uzytkowniku!

    W trosce o komfort korzystania z naszego serwisu chcemy dostarczac Ci coraz lepsze uslugi. By moc to robic prosimy, abys wyrazil zgode na dopasowanie tresci marketingowych do Twoich zachowan w serwisie. Zgoda ta pozwoli nam czesciowo finansowac rozwoj swiadczonych uslug.

    Pamietaj, ze dbamy o Twoja prywatnosc. Nie zwiekszamy zakresu naszych uprawnien bez Twojej zgody. Zadbamy rowniez o bezpieczenstwo Twoich danych. Wyrazona zgode mozesz cofnac w kazdej chwili.

     Tak, zgadzam sie na nadanie mi "cookie" i korzystanie z danych przez Administratora Serwisu i jego partnerow w celu dopasowania tresci do moich potrzeb. Przeczytalem(am) Polityke prywatnosci. Rozumiem ja i akceptuje.

     Tak, zgadzam sie na przetwarzanie moich danych osobowych przez Administratora Serwisu i jego partnerow w celu personalizowania wyswietlanych mi reklam i dostosowania do mnie prezentowanych tresci marketingowych. Przeczytalem(am) Polityke prywatnosci. Rozumiem ja i akceptuje.

    Wyrazenie powyzszych zgod jest dobrowolne i mozesz je w dowolnym momencie wycofac poprzez opcje: "Twoje zgody", dostepnej w prawym, dolnym rogu strony lub poprzez usuniecie "cookies" w swojej przegladarce dla powyzej strony, z tym, ze wycofanie zgody nie bedzie mialo wplywu na zgodnosc z prawem przetwarzania na podstawie zgody, przed jej wycofaniem.