Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: skrypt do pobierania obrazków na serwer
Forum PHP.pl > Forum > PHP
Avatarus
Witam
Potrzebuje skrypt który pobieram by pliki graficzne z wskazanego linku i zapisywał od razu te obrazki w katalogu na serwerze.
Jak można to zrobić?
Docelowo trzeba pobrać 13 tyś małych plików więc robienie tego ręcznie odpada, poza tym dane te zmieniają się
Dzięki
cycofiasz
Poczytaj o CURL
toaspzoo
  1. #!/bin/bash
  2.  
  3. adres=http://demotywatory.pl
  4. stron=1000
  5. i=1
  6. wynik=demotywatory.txt
  7.  
  8.  
  9. while [ $i -le $stron ]; do
  10. lynx -source "$adres/page/$i" | grep "src=" | grep "img " | awk -F src= '{ printf $2; printf "\n" }' | awk -F\" '{ printf ""; printf $2; printf "\n" }' >> $wynik
  11. i=$[i + 1]
  12.  
  13. done
  14.  
  15. wget --directory-prefix=demotywatory -i $wynik


http://znajomek.unixstorm.org/linux.txt

kapirajt smile.gif

for linux smile.gif
zegarek84
jeśli obrazki nie zabezpieczone (na 99% nie) to rozwiązanie z bash'a wystarczy (jesli zabezpieczone trzeba by jeszcze kilka parametrów do wget dodać - ale ja słabo znam bash'a)...

jeśli chodzi o PHP to na 99% wystarczy Ci zwykłe file_get_contents i file_put_contents, jeśli zabezpieczone to do tych funkcji musisz dodać kontekst lub skorzystać ze wspomnianego CURL'a lub z socket'ów... jeśli jeszcze źródło strony musisz parsować to by było łatwiej zapomnij o wyrażeniach regularnych a luknij na Document Object Model lub w google wstukaj phpQuery - trochu łatwiej może będzie Ci wyszukać elementy drzewa DOM...
Avatarus
listę linków do plików już mam (generowana na podstawie bazy)
potrzeba tylko ściągnąć konkretne pliki.
Spróbuje to zrobić tym file_get_contents i ajaxem
Dzięki za info
toaspzoo
ściągasz wgetem;p

  1. wget --directory-prefix=obrazki -i nazwa_pliku.txt


Pobierze Ci wszystkie obrazki z pliku "nazwa_pliku.txt", z czym nazwa_pliku.txt - jego zawartość musi wyglądać następująco:
Kod
http://obrazek.com/obrazek.jpg"]http://obrazek.com/obrazek.jpg
http://link.pl/link.png"]http://link.pl/link.png

Czyli muszą być w oddzielnych liniach

powodzenia smile.gif
zegarek84
równie dobrze mogłeś mu odpisać ze strumieniami ;]...

ps.
widzę, że lekko się w temacie orientujesz, nie wiem, czy wynika to z wykonywanego zawodu (jeśli tak to literatury mi nie polecisz gdyż to co napisane też rozumiem choć z palca bym nie napisał a z manem siedzieć mi się nie chce a inne nie związane z tym pozycje nie mam czasu przeczytać) to jeśli znasz jakieś dobre artykuły lub książki co do bardziej złożonych strumieni/potoków to może podeślij linka lub zapodaj tytuły - byłbym bardzo wdzięczny do poczytania na później (tylko nie chodzi mi o program awk gdyż bez niego da się zrobić niemal to samo a o złożone przykłady strumieni i jakieś ciekawsze praktyczne programy - może kiedyś się to przyda)
wNogachSpisz
13k, to może multi_curl
Avatarus
bez problemu działa na file_get_contents i pfile_put_contents smile.gif
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.