From f71062147f813342b0b87b9f306199c7d9f3bdd7 Mon Sep 17 00:00:00 2001 From: pierre geeraert Date: Thu, 3 Apr 2025 23:11:50 +0100 Subject: [PATCH] not working yet --- README.md | 5 +++++ reddit_downloader.sh | 47 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100755 reddit_downloader.sh diff --git a/README.md b/README.md index fec886d..9895a11 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,7 @@ # Stash +usage : + +./reddit_downloader.sh Countem1a + + diff --git a/reddit_downloader.sh b/reddit_downloader.sh new file mode 100755 index 0000000..bb3fe31 --- /dev/null +++ b/reddit_downloader.sh @@ -0,0 +1,47 @@ +#!/bin/bash + +# Check if user has provided a Reddit username +if [ -z "$1" ]; then + echo "Usage: $0 " + exit 1 +fi + +USERNAME=$1 +USER_AGENT="reddit-image-downloader" +OUTPUT_DIR="${USERNAME}_images" + +# Create a directory to save images +mkdir -p "$OUTPUT_DIR" + +# Reddit API URL to fetch user submissions +REDDIT_API_URL="https://www.reddit.com/user/$USERNAME/submitted.json?limit=100" + +# Function to download images +download_images() { + echo "Fetching images from user: $USERNAME" + + # Loop through pages of user submissions (pagination handled) + while :; do + # Fetch data from Reddit + JSON=$(curl -s -A "$USER_AGENT" "$REDDIT_API_URL") + + # Get image URLs from the media_metadata field (looking for 's' key for highest quality image) + IMAGE_URLS=$(echo "$JSON" | jq -r '.data.children[] | select(.data.media_metadata != null) | .data.media_metadata | to_entries[] | .value.s.u') + + # Check if we found any image URLs + if [ -z "$IMAGE_URLS" ]; then + echo "No more images found." + break + fi + + # Download each image URL + for IMAGE_URL in $IMAGE_URLS; do + echo "Downloading $IMAGE_URL..." + wget -q -P "$OUTPUT_DIR" "$IMAGE_URL" + done + + # Check if there's a next page of submissions + NEXT_PAGE=$(echo "$JSON" | jq -r '.data.after') + # if [ "$NEXT_PAGE" != "null" ]; then + # REDDIT_API_URL="https://www.reddit.com/user/$USERNAME/submitted.json?limit= + done