Git Product home page Git Product logo

redditstuffdownloader's Introduction

RedditStuffDownloader

Download any subreddit posts/media/content - along with comments

Requirements

  • Python 3.8
  • Reddit account - with Script app activated (for API requests)
    • fill the config.json file with the required configuration
  • FFmpeg download from website- FFmpeg, keep in parent directory (only used for reddit video & audio combination)

Installation

# clone the repo
$ git clone https://github.com/Maneesh3/RedditStuffDownloader.git

# install the requirements
$ pip3 install -r requirements.txt

Usage

usage: 
$ python Reddit-Stuff-Downloader/reddit-dwn.py 
 _____          _     _ _ _      _____ _          __  __ 
|  __ \        | |   | (_) |    / ____| |        / _|/ _|
| |__) |___  __| | __| |_| |_  | (___ | |_ _   _| |_| |_ 
|  _  // _ \/ _` |/ _` | | __|  \___ \| __| | | |  _|  _|
| | \ \  __/ (_| | (_| | | |_   ____) | |_| |_| | | | |  
|_|  \_\___|\__,_|\__,_|_|\__| |_____/ \__|\__,_|_| |_|  
 _____                      _                 _           
|  __ \                    | |               | |          
| |  | | _____      ___ __ | | ___   __ _  __| | ___ _ __ 
| |  | |/ _ \ \ /\ / / '_ \| |/ _ \ / _` |/ _` |/ _ \ '__|
| |__| | (_) \ V  V /| | | | | (_) | (_| | (_| |  __/ |   
|_____/ \___/ \_/\_/ |_| |_|_|\___/ \__,_|\__,_|\___|_|   
 
usage: reddit1.py [-h] [-l] [-f FPATH] [-c CNT] [-t TYP] [-i PID] [-u PURL]

[#] Reddit Stuff Downloader [#]

optional arguments:
  -h, --help                 show this help message and exit
  -l, --subredditList        predefined subreddits list
  -s SUBNAME, --sub SUBNAME  single subreddit; -s <sub name>
  -f FPATH, --file FPATH     text file; -f <File path>
  -c CNT, --count CNT        posts count; -c <number>
  -t TYP, --type TYP         filter type(hot,top,new); -t <type>
  -i PID, --pid PID          single Post ID; -i <PostID>
  -u PURL, --purl PURL       single Post URL; -u <PostUrl>
  -m COMM, --comm COMM       download comments; -m <limit>
 
 
Each subreddit content is saved in a seperate directory 
along with posts links saved in json file

TODO:

  • Download Reddit videos along with audio
  • Command line arguments [currently working on]
  • Verify Windows OS support !?? [currently working on] Bugs listed in issues page
  • Cannot download some URL's content, Unknown URL must be properly notified (logs)
  • add inputs like list of subs in txt, subreddit name input, etc.. [currently working on] Bugs listed in issues page
  • Reconstruct the source code using classes and with proper documentation

Copyright (c) 2020 Maneesh

redditstuffdownloader's People

Contributors

jafar-khan avatar maneesh3 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

jafar-khan

redditstuffdownloader's Issues

Code Review - Enhancements

Review source code and arrange in structured manner !

  • using OOPS concepts
  • separate files for large functions
  • command line arguments [IMPORTANT]

todo in command line argv:

    • add check for count and filter value provided
    • display all types of sorting filters

Cannot download Reddit Gallery post

  • cannot get proper links/URLs of images/content properly
  • Downloading the awards for a post instead of content
  • unable to get NSFW images, getting blur images of them

Unknown Download URLs / Formats

    • images in webp format - download and convert to png/jpg
>>> from PIL import Image
>>> img = Image.open('ww.webp').convert('RGB')
>>> img.save('ww.png', 'png')
    • single video large size / time taking to load - not working

Plz comment down if any other issues found

Check for Windows OS functionality and errors

Check for Windows OS functionality and errors, as the main development is done in Mac OS, could not have a chance to check in Windows OS machine.

  • FFMPEG interaction should give an error if not present, also working without it ??? (must check this)
  • dependencies (from requirements.txt) Working
  • text colors are not working in windows, replace with '' - the color code

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.