Wątek przeniesiony 2019-11-21 21:07 z przez Ktos.

Skrypt bash pobierający obrazki ze strony www

Odpowiedz Nowy wątek
2019-11-19 13:05

Rejestracja: 1 rok temu

Ostatnio: 1 miesiąc temu

1

Muszę napisać skrypt bash, który z linii komend pobierze podaną stronę do pliku tymczasowego, znaleźć w niej adresy obrazków, pobrać pliki obrazków i usunąć plik z treścią strony. Dodatkowo skrypt powinien sprawdzać czy podany argument przez użytkownika w ogóle istnieje.
Na razie udało mi się pobrać wszystkie obrazki z podanej przez użytkownika strony, ale nie wiem jak dalej się za to zabrać.
Będę wdzięczna za pomoc 🙂

pokaż co udało Ci się napisać :) - nullpt4 2019-11-19 13:06
jak Ci się udało pobrać obrazki to chyba zostało tylko usunąć plik, tak? - nullpt4 2019-11-19 13:12

Pozostało 580 znaków

2019-11-19 13:13

Rejestracja: 1 rok temu

Ostatnio: 1 miesiąc temu

1

#!/bin/bash
wget =.jpg, .png $1 -c --directory-prefix=/home...(dalsza ścieżka)

Pozostało 580 znaków

2019-11-19 13:14

Rejestracja: 1 rok temu

Ostatnio: 1 miesiąc temu

1

Nie do końca. Musze sprawdzic czy link istnieje, nie mam folderu tymczasowego i usuwania tego pliku

Pozostało 580 znaków

2019-11-19 13:19

Rejestracja: 1 rok temu

Ostatnio: 8 godzin temu

2

moze tak?

#!/bin/bash
url=$1
dir="images"

if ! [ -d $dir ];then   #EDIT
   mkdir $dir;        #EDIT
fi

wget -nd -r -P $dir -A jpeg,jpg,bmp,gif,png $url
if [ $? != 0 ];then
   echo "Url does not exist"
   exit 1;
fi
edytowany 2x, ostatnio: nullpt4, 2019-11-21 18:04

Pozostało 580 znaków

2019-11-19 13:23

Rejestracja: 1 rok temu

Ostatnio: 1 miesiąc temu

0

Wrócę do domu i sprawdzę. Dziękuję!

Pozostało 580 znaków

2019-11-21 15:01

Rejestracja: 1 rok temu

Ostatnio: 1 miesiąc temu

0

Wpisując ten kod nie zapisują mi się obrazki, a plik, który miał być tymczasowy pozostaje :(

zapisują się w katalogu images, i nie jest tworzony zaden plik tymczasowy - nullpt4 2019-11-21 15:05

Pozostało 580 znaków

2019-11-21 15:29

Rejestracja: 1 rok temu

Ostatnio: 1 miesiąc temu

0
adekniejadek napisał(a):

Wpisując ten kod nie zapisują mi się obrazki, a plik, który miał być tymczasowy pozostaje :(

W pliku images mam tylko ten plik tekstowy i 0 zdjec

podaj url'a do strony - nullpt4 2019-11-21 15:31

Pozostało 580 znaków

2019-11-21 15:39

Rejestracja: 1 rok temu

Ostatnio: 1 miesiąc temu

0

https://pl.wikipedia.org/wiki/Pryzmat

Pozostało 580 znaków

2019-11-21 17:51

Rejestracja: 1 rok temu

Ostatnio: 1 miesiąc temu

0

Trochę zmieniłam linijkę z komendą wget i działa. Bardzo dziękuję, bo sama bym sobie nie poradzila :)
Mam jeszcze jedno pytanie: dlaczego raz używamy $dir a raz $images?

sorry, masz racje, powinno być dir, poprawiłem wyżej kod. - nullpt4 2019-11-21 18:04

Pozostało 580 znaków

2019-11-21 18:29

Rejestracja: 1 rok temu

Ostatnio: 1 miesiąc temu

0
adekniejadek napisał(a):

Trochę zmieniłam linijkę z komendą wget i działa. Bardzo dziękuję, bo sama bym sobie nie poradzila :)
Mam jeszcze jedno pytanie: dlaczego raz używamy $dir a raz $images?

Super, a powiedziałbyś mi jeszcze dlaczego w tym drugim ifie jest "$?" ?

$? zwraca err kod ostatniej komendy, jeśli jest równy 0, to znaczy że komenda wykonała się poprawnie, i np taki url też jest poprawny - nullpt4 2019-11-21 21:20

Pozostało 580 znaków

2019-11-21 22:30

Rejestracja: 1 rok temu

Ostatnio: 1 miesiąc temu

0

dziękuję!

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0