aboutsummaryrefslogtreecommitdiff
path: root/scripts/.local/bin/personal/hdqwallsdownload
blob: 6a203afd4294a5085e64ab33915ef6e9ede81fc0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#!/bin/bash

# A utility to download all images from a specific website give the exact url

# https://hdqwalls.com/2880x1800/anime-girl-wallpapers/page/2
# https://hdqwalls.com/search?q=Genshin+Impact&page=2

FILE="/tmp/wallpaperhtml"

download() {
  curl -s "$1" > "$FILE"

  IMAGES=$(cat "$FILE" | pup img.thumbnail |  grep -o '"http[^"]\+"' | sed 's/\/wallpapers\/thumb/\/download/g' | sed 's/.jpg"$/-2560x1600.jpg/g' | sed 's/"//g')
  COUNTER=0

  for IMG in $IMAGES; do
    let COUNTER++
    NAME="$(basename $IMG)"

    echo "[ Download ] ($COUNTER) $NAME" 
    curl -s "$IMG" > "$NAME"
    sleep 2
  done

  echo -e "\nFinished!"
}

if [[ -z "$1" ]]; then
  echo "[ Error ] Please provide a URL"
  exit 1
fi

download "$1"