Guest User

420chan image downloader

a guest
Aug 23rd, 2020
215
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 0.83 KB | None | 0 0
  1. #!/bin/bash
  2. # Dependencies:
  3. #  - curl
  4. #  - jq (for JSON object processing)
  5.  
  6. if [[ "$1" == "" || "$2" == "" ]] ; then
  7.     echo usage: $0 board_name thread_number
  8.     exit 1
  9. fi
  10.  
  11. board_name=$1
  12. thread_no=$2
  13. thread_url="https://api.420chan.org/$board_name/res/$thread_no.json"
  14.  
  15. echo "Downloading thread page at $thread_url"
  16.  
  17. image_names=$(curl $thread_url \
  18.      | jq '.posts|map(.filename + .ext)' \
  19.      | jq 'map(select(. != null))'  \
  20.      | jq -r 'join("\n")')
  21.  
  22. image_fmt="https://boards.420chan.org/%s/src/%s"
  23.  
  24. download_folder="420chan_thread_$thread_no"
  25.  
  26. test -d $download_folder || mkdir $download_folder
  27.  
  28. for image_name in $image_names; do
  29.     image_url="$(printf $image_fmt $board_name $image_name)"
  30.     echo "Downloading $image_url..."
  31.     curl "$image_url" > "$download_folder/$image_name" 2>/dev/null
  32. done
  33.  
Add Comment
Please, Sign In to add comment