This commit is contained in:
Ali Parlakci
2018-07-10 18:07:31 +03:00

View File

@@ -12,19 +12,19 @@ This program downloads imgur, gfycat and direct image and video links of saved p
- [Program Modes](#program-modes) - [Program Modes](#program-modes)
- [Running the script](#running-the-script) - [Running the script](#running-the-script)
- [Using the command line arguments](#using-the-command-line-arguments) - [Using the command line arguments](#using-the-command-line-arguments)
- [Examples](#examples) - [Examples](#examples)
- [FAQ](#faq) - [FAQ](#faq)
- [Changelog](#changelog) - [Changelog](#changelog)
## What it can do? ## What it can do?
### It... ### It...
- can get posts from: frontpage, subreddits, multireddits, redditor's submissions, upvoted and saved posts; search results or just plain reddit links - can get posts from: frontpage, subreddits, multireddits, redditor's submissions, upvoted and saved posts; search results or just plain reddit links
- sorts post by hot, top, new and so on - sorts posts by hot, top, new and so on
- downloads imgur albums, gfycat links, [self posts](#i-cant-open-the-self-posts) and any link to a direct image - downloads imgur albums, gfycat links, [self posts](#i-cant-open-the-self-posts) and any link to a direct image
- skips the existing ones - skips the existing ones
- puts post titles to file's name - puts post titles to file's name
- puts every post to its subreddit's folder - puts every post to its subreddit's folder
- saves reusable a copy of posts' details that are found so that they can be re-downloaded again - saves a reusable copy of posts' details that are found so that they can be re-downloaded again
- logs failed ones in a file to so that you can try to download them later - logs failed ones in a file to so that you can try to download them later
- can be run with double-clicking on Windows (but I don't recommend it) - can be run with double-clicking on Windows (but I don't recommend it)
@@ -62,13 +62,13 @@ All the program modes are activated with command-line arguments as shown [here](
- Gets posts from given user's upvoted posts. - Gets posts from given user's upvoted posts.
- **subreddit mode** - **subreddit mode**
- Gets posts from given subreddit or subreddits that is sorted by given type and limited by given number. - Gets posts from given subreddit or subreddits that is sorted by given type and limited by given number.
- You may also use search in this mode. See [`py -3 script.py --help`](#using-the-command-line-arguments). - You may also use search in this mode. See [`python script.py --help`](#using-the-command-line-arguments).
- **multireddit mode** - **multireddit mode**
- Gets posts from given user's given multireddit that is sorted by given type and limited by given number. - Gets posts from given user's given multireddit that is sorted by given type and limited by given number.
- **link mode** - **link mode**
- Gets posts from given reddit link. - Gets posts from given reddit link.
- You may customize the behaviour with `--sort`, `--time`, `--limit`. - You may customize the behaviour with `--sort`, `--time`, `--limit`.
- You may also use search in this mode. See [`py -3 script.py --help`](#using-the-command-line-arguments). - You may also use search in this mode. See [`python script.py --help`](#using-the-command-line-arguments).
- **log read mode** - **log read mode**
- Takes a log file which created by itself (json files), reads posts and tries downloading them again. - Takes a log file which created by itself (json files), reads posts and tries downloading them again.
- Running log read mode for FAILED.json file once after the download is complete is **HIGHLY** recommended as unexpected problems may occur. - Running log read mode for FAILED.json file once after the download is complete is **HIGHLY** recommended as unexpected problems may occur.
@@ -86,7 +86,7 @@ Run the script.py file from terminal with command-line arguments. Here is the he
Use `.\` for current directory and `..\` for upper directory when using short directories, otherwise it might act weird. Use `.\` for current directory and `..\` for upper directory when using short directories, otherwise it might act weird.
```console ```console
$ py -3 script.py --help $ python script.py --help
usage: script.py [-h] [--link link] [--saved] [--submitted] [--upvoted] usage: script.py [-h] [--link link] [--saved] [--submitted] [--upvoted]
[--log LOG FILE] [--subreddit SUBREDDIT [SUBREDDIT ...]] [--log LOG FILE] [--subreddit SUBREDDIT [SUBREDDIT ...]]
[--multireddit MULTIREDDIT] [--user redditor] [--multireddit MULTIREDDIT] [--user redditor]
@@ -124,43 +124,51 @@ optional arguments:
downloading later downloading later
``` ```
### Examples ## Examples
#### Don't include `py -3 script.py` part if you start the script by double-clicking - **Don't include `python script.py` part if you start the script by double-clicking**
- **Use `python3` instead of `python` if you are using *MacOS* or *Linux***
```console ```console
py -3 script.py .\\NEW_FOLDER --sort new --time all --limit 10 --link "https://www.reddit.com/r/gifs/search?q=dogs&restrict_sr=on&type=link&sort=new&t=month" python script.py .\\NEW_FOLDER --sort new --time all --limit 10 --link "https://www.reddit.com/r/gifs/search?q=dogs&restrict_sr=on&type=link&sort=new&t=month"
``` ```
```console ```console
py -3 script.py .\\NEW_FOLDER --link "https://www.reddit.com/r/learnprogramming/comments/7mjw12/" python script.py .\\NEW_FOLDER --link "https://www.reddit.com/r/learnprogramming/comments/7mjw12/"
``` ```
```console ```console
py -3 script.py .\\NEW_FOLDER --search cats --sort new --time all --subreddit gifs pics --NoDownload python script.py .\\NEW_FOLDER --search cats --sort new --time all --subreddit gifs pics --NoDownload
``` ```
```console ```console
py -3 script.py .\\NEW_FOLDER --user [USER_NAME] --submitted --limit 10 python script.py .\\NEW_FOLDER --user [USER_NAME] --submitted --limit 10
``` ```
```console ```console
py -3 script.py .\\NEW_FOLDER --multireddit good_subs --user [USER_NAME] --sort top --time week --limit 250 python script.py .\\NEW_FOLDER --multireddit good_subs --user [USER_NAME] --sort top --time week --limit 250
``` ```
```console ```console
py -3 script.py .\\NEW_FOLDER\\ANOTHER_FOLDER --saved --limit 1000 python script.py .\\NEW_FOLDER\\ANOTHER_FOLDER --saved --limit 1000
``` ```
```console ```console
py -3 script.py C:\\NEW_FOLDER\\ANOTHER_FOLDER --log UNNAMED_FOLDER\\FAILED.json python script.py C:\\NEW_FOLDER\\ANOTHER_FOLDER --log UNNAMED_FOLDER\\FAILED.json
``` ```
## FAQ ## FAQ
### I can't startup the script no matter what. ### I can't startup the script no matter what.
- Try `python3` or `python` or `py -3` as python have real issues about naming their program - Try these:
- **`python`**
- **`python3`**
- **`python3.7`**
- **`python3.6`**
- **`py -3`**
### I can't open the self posts. Python have real issues about naming their program
### I can't open the self post files.
- Self posts are held at reddit as styled with markdown. So, the script downloads them as they are in order not to lose their stylings. However, there is a great Chrome extension [here](https://chrome.google.com/webstore/detail/markdown-viewer/ckkdlimhmcjmikdlpkmbgfkaikojcbjk) for viewing Markdown files with its styling. Install it and open the files with Chrome. - Self posts are held at reddit as styled with markdown. So, the script downloads them as they are in order not to lose their stylings. However, there is a great Chrome extension [here](https://chrome.google.com/webstore/detail/markdown-viewer/ckkdlimhmcjmikdlpkmbgfkaikojcbjk) for viewing Markdown files with its styling. Install it and open the files with Chrome.
## Changelog ## Changelog