A simple kemono.party downloader using python.

Related tags

Downloaderdownloader
Overview

kemono-dl

This is a simple kemono.party downloader.

How to use

  1. Install python
  2. Download source code from releases and extract it
  3. Then install requirements with pip install -r requirements.txt
  4. Get a cookie.txt file from kemono.party
    • You can get the cookie text file using a chrome or firefox extension
    • A cookie.txt file is required to use downloader.
  5. Run python kemono-dl.py --cookies "cookie.txt" --links https://kemono.party/SERVICE/user/USERID

Options

  -h, --help                  show this help message and exit
  --version                   Displays the current version then exits
  --cookies COOKIES           Set path to cookie.txt (REQUIRED)
  -l LINKS, --links LINKS     Downloads user or post links. Suports comman seperated lists.
  -f FILE, --fromfile FILE    Download users and posts from a file seperated by newlines
  --favorite-users            Downloads all users saved in your favorites. (Requires logged in cookies)
  --favorite-posts            Downloads all posts saved in your favorites. (Requires logged in cookies)
  -o PATH, --output PATH      Set path to download posts
  -a FILE, --archive FILE     Downloads only posts that are not in provided archive file. (Can not be used with --update)
  -u, --update                Updates already downloaded posts. (post must have json log) (can not be used with --archive)
  -i, --ignore-errors         Continue to download post(s) when an error occurs
  --yt-dlp                    Tries to Download embeds with yt-dlp. (experimental)
  --post-timeout SEC          The amount of time in seconds to wait between saving a posts. (default: 0)
  --retry-download COUNT      The amount of times to try to redownload a file. (automatically ignores errors) (default: 0)
  --date DATE                 Only download posts from this date.
  --datebefore DATE           Only download posts from this date and before.
  --dateafter DATE            Only download posts from this date and after.
  --min-filesize SIZE         Do not download files smaller than SIZE. (ex. 100B, 20KB, 5MB, 1GB)
  --max-filesize SIZE         Do not download files larger than SIZE. (ex. 100B, 20KB, 5MB, 1GB)
  --only-filetypes EXT        Only downloads attachments and post file with given EXTs. Suports comman seperated lists. (ex. JPG, mp4, mp3, png)
  --skip-filetypes EXT        Skips attachments and post file with given EXTs. Suports comman seperated lists. (ex. JPG, mp4, mp3, png)
  --skip-content              Skips saving posts content.
  --skip-embeds               Skips saving posts embeds.
  --skip-pfp-banner           Skips saving users pfp and banner.
  --skip-comments             Skips saving posts comments.
  --skip-postfile             Skips saving posts post file.
  --skip-attachments          Skips saving posts attachments.
  --skip-json                 Skips saving posts json. (--update won't work on posts without json)
  --force-external            Save all external links in content to a text file.
  --force-indexing            Adds an indexing value to the attachment file names to preserve ordering.
  --force-inline              Force download all external inline images found in post content. (experimental)
  --force-yt-dlp              Tries to Download links in content with yt-dlp. (experimental)

Notes

  • Default download location is a Downloads folder in the current working directory (will be created automatically)
  • Input link format: https://kemono.party/{service}/user/{user_id} or https://kemono.party/{service}/user/{user_id}/post/{post_is}
  • Using any date option will not downlaod any gumroad posts because they have no dates
  • Using --ignore-erros posts with errors will not be archived
  • Using --max-filesize or --min-filesize will cause files that don't have content-length in their headers to not download. This mainly includes external inline images, pfp, and banners.
  • When using --favorite-users or --favorite-posts you must get your cookies.txt after logging into kemono.party.
  • You may need to install ffmpeg for yt-dlp to work
  • If downloading with yt-dlp fails that will count as an error and the post won't be archived. This includes yt-dlp failing because the site was just incompatible. I will need to look into seeing if there is a different error for these two circumstances.

Known Bugs

  • When downloading a file it might just stop downloading, I believe this happens when a large file is downloaded and the site doesn't have it cached so the connection gets timed out after a while. I am still looking into this issue.

Examples

# downloads all users and posts from "kemono.txt" to "C:\Users\User\Downloads" while skipping saved posts in "archive.txt"
python kemono-dl.py --cookies "cookie.txt" -o "C:\Users\User\Downloads" --archive "archive.txt" --fromfile "kemono.txt"

# only downloads user posts that were published on 1/1/21
python kemono-dl.py --cookies "cookie.txt" --date 20210101 --links https://kemono.party/SERVICE/user/USERID

# goes through all favorite users and posts only downloading files smaller than 100MB 
python kemono-dl.py --cookies "cookie.txt" --favorite-users --favorite-posts --max-filesize 100MB

# downloads a post and user while ignoring downloading errors
python kemono-dl.py --cookies "cookie.txt" -i -l https://kemono.party/SERVICE/user/USERID/post/POSTID,https://kemono.party/SERVICE/user/USERID

Default File Output Format

CWD
├── kemono-dl.py
└── Downloads
    └── {service}
        └── {username} [{user_id}]
            ├── {username} [{user_id}] icon.ext
            ├── {username} [{user_id}] banner.ext
            └── [{date}] [{post_id}] {post_title}
                ├── external files
                │   └── video.mp4
                ├── attachments
                │   └── attachment.ext
                ├── inline
                │   └── image.ext
                ├── content.html
                ├── comments.html
                ├── embeds.txt
                ├── external_links.txt
                ├── file.ext
                └── {post_id}.json

To do

  • Allow file naming structure to be changed in command line
  • Allow file path structure to be changed in command line
  • Add Discord service (in progress)

Keep in mind

  • Using this might get you IP banned from kemono party.
    • This is highly unlikely now that I switched to using their API!
  • If the site changes the script might break.
    • This is also now highly unlikely now that I switched to using their API!
Comments
  • script doesnt check hash value anymore

    script doesnt check hash value anymore

    Description

    script doesnt check hash value anymore unlike previous version

    Additional comments

    Please add the feature back, so it can check for corrupt downloads. ty

    opened by afterdelight 45
  • Crashing

    Crashing

    Version

    Version: 2021.12.29.01

    Your Command

    
    --dateafter 20210101
    
    

    Description of bug

    Always crashing.

    How To Reproduce

    add --dateafter 20210101

    Error messages and tracebacks

    Traceback (most recent call last):
      File ".\kemono-dl\kemono-dl.py", line 4, in <module>
        main()
      File ".\kemono-dl\src\main.py", line 608, in main
        D.download_posts()
      File ".\kemono-dl\src\main.py", line 164, in download_posts
        if self._should_download():
      File ".\kemono-dl\src\main.py", line 233, in _should_download
        elif not(self.current_post['date_object'] == args['date'] or self.current_post['date_object'] <= args['datebefore'] or self.current_post['date_object'] >= args['dateafter']):
    TypeError: '<=' not supported between instances of 'NoneType' and 'datetime.datetime'
    

    debug.log

    bug 
    opened by Nerodacles 36
  • KeyError: 'index'

    KeyError: 'index'

    Version

    Version: latest

    Your Command

    F:\downloader\kemono.party\kemono-dl-main>kemono-dl.py --cookies kemono.party_cookies.txt --from-file gumroad_aroma.txt --dirname-pattern "/{site}/{service}/{username} [{user_id}]/{title}" --filename-pattern "[{added}] [{id}] [{index}] {filename}.{ext}" --other-filename-pattern "[{added}] [{id}] [{index}] {filename}.{ext}" --extract-links --banner --icon --yt-dlp --archive gumroad_aroma_downloaded.txt --verbose

    Description of bug

    KeyError: 'index' whne running command

    Error messages and tracebacks

    ``DEBUG:Getting creator json from https://kemono.party/api/creators/ DEBUG:Requesting user json from: https://kemono.party/api/gumroad/user/4487698848613?o=0 ERROR:Unable to get posts for https://kemono.party/gumroad/user/4487698848613 Traceback (most recent call last): File "F:\downloader\kemono.party\kemono-dl-main\src\main.py", line 640, in start_download self.get_post(url) File "F:\downloader\kemono.party\kemono-dl-main\src\main.py", line 162, in get_post post = self.clean_post(post, user, site) File "F:\downloader\kemono.party\kemono-dl-main\src\main.py", line 355, in clean_post self.compile_content_links(new_post, content_soup) File "F:\downloader\kemono.party\kemono-dl-main\src\main.py", line 284, in compile_content_links new_post['links']['file_path'] = compile_file_path(new_post['post_path'], new_post['post_variables'], new_post['links']['file_variables'], self.other_filename_template, self.restrict_ascii) File "F:\downloader\kemono.party\kemono-dl-main\src\helper.py", line 38, in compile_file_path cleaned_file = clean_file_name(file_split[-1].format(**file_variables, **post_variables)) KeyError: 'index' DEBUG:Requesting user json from: https://kemono.party/api/gumroad/user/1199729197439?o=0 ERROR:Unable to get posts for https://kemono.party/gumroad/user/1199729197439 Traceback (most recent call last): File "F:\downloader\kemono.party\kemono-dl-main\src\main.py", line 640, in start_download self.get_post(url) File "F:\downloader\kemono.party\kemono-dl-main\src\main.py", line 162, in get_post post = self.clean_post(post, user, site) File "F:\downloader\kemono.party\kemono-dl-main\src\main.py", line 355, in clean_post self.compile_content_links(new_post, content_soup) File "F:\downloader\kemono.party\kemono-dl-main\src\main.py", line 284, in compile_content_links new_post['links']['file_path'] = compile_file_path(new_post['post_path'], new_post['post_variables'], new_post['links']['file_variables'], self.other_filename_template, self.restrict_ascii) File "F:\downloader\kemono.party\kemono-dl-main\src\helper.py", line 38, in compile_file_path cleaned_file = clean_file_name(file_split[-1].format(**file_variables, **post_variables)) KeyError: 'index'

    
    
    
    bug 
    opened by afterdelight 20
  • Can't use on Google Colab (got different tracebacks with different Python version)

    Can't use on Google Colab (got different tracebacks with different Python version)

    Version

    Version: 2021.11.03
    (Unable to get version with the command python kemono-dl.py --version because your argument parser marked the argument '--cookies' as required)

    Service, User ID, Post ID

    • Service: patreon
    • User ID: 7237458
    • Post ID: None (not downloading a specific post)

    Your Command

    python kemono-dl.py --cookies cookies.txt --links https://kemono.party/patreon/user/7237458
    

    Description of bug

    I'm trying to implement this into Google Colab, but the script is giving me python traceback instead.

    How To Reproduce

    1. Create a Notebook in Google Colab
    2. Use the command below:
    !wget https://github.com/AplhaSlayer1964/kemono-dl/archive/refs/tags/2021.11.03.zip
    !unzip /content/2021.11.03.zip
    !mv /content/kemono-dl-2021.11.03 /content/kemono-dl
    !pip install -r /content/kemono-dl/requirements.txt
    !python /content/kemono-dl/kemono-dl.py --cookies /content/kemono-dl/cookies.txt --links https://kemono.party/patreon/user/7237458
    

    (at this point, cookies.txt have been uploaded into the folder)

    Error messages and tracebacks

    Traceback (most recent call last):
      File "/content/tools/kemono-dl/kemono-dl.py", line 1, in <module>
        from src.main import main
      File "/content/tools/kemono-dl/src/main.py", line 2, in <module>
        from .api import extract_link_info, get_favorites
      File "/content/tools/kemono-dl/src/api.py", line 24, in <module>
        raise_on_status = True
    TypeError: __init__() got an unexpected keyword argument 'allowed_methods'
    

    Additional comments

    I tried to run it on my main machine (Windows 11 + Python 3.10) and it worked. I could download.
    I though that must be because Google Colab is still using Python 3.7.
    I tried to install Python 3.10 and run the script with it... I got different traceback this time.

    Traceback (most recent call last):
      File "/content/tools/kemono-dl/kemono-dl.py", line 1, in <module>
        from src.main import main
      File "/content/tools/kemono-dl/src/main.py", line 2, in <module>
        from .api import extract_link_info, get_favorites
      File "/content/tools/kemono-dl/src/api.py", line 1, in <module>
        import requests
    ModuleNotFoundError: No module named 'requests'
    
    bug 
    opened by shirooo39 17
  • [Feature Request] - Short media into folders according to the type of the media they are

    [Feature Request] - Short media into folders according to the type of the media they are

    Description

    Please add a function that allows to download the posts without them being inside folders and that instead they are sorted into folders according to the type of media they are (images, videos etc.)

    After I finish downloading everything, I have to extract all the images from all the folders, then create normally two folders (for images and for videos) manually and it would be great if all this was done automatically.

    Additional comments

    It is not a development priority but it would certainly do a great favor to the user's quality of life :)

    opened by Sohzph 14
  • (not solved)An issue where the post did not finish downloading but not marked as failed

    (not solved)An issue where the post did not finish downloading but not marked as failed

    image

    service: fanbox user_id: 49906039 post_id: 2245817 I have confirmed that the problem still occurs after the update. The issue was found in multiple posts. (The timestamp was added by me to check the log) Also, there is a problem with the progress bar not showing when downloading the pdf file.

    bug 
    opened by CODE-LA-LI-LU-LE-LO 11
  • Output Template bug

    Output Template bug

    sudo python3 /home/naworldw/exthdd/alink/me/TEMPDOWNLOAD/PROGRAM/PYTHON/kemono2/kemono-dl.py --cookies "/home/naworldw/exthdd/alink/me/TEMPDOWNLOAD/PROGRAM/PYTHON/kemono2/cookie.txt" --output "/home/naworldw/exthdd/alink/me/TEMPDOWNLOAD/IMAGE/ETC/kemono/{service}/{username}[{user_id}]/[{published}] [{id}]/[{index}]{name}.{ext}" --from-file "/home/naworldw/exthdd/alink/me/TEMPDOWNLOAD/PROGRAM/PYTHON/kemono2/users.txt" --skip-filetypes "rar,zip,clip" When you run the command, the file is created strangely. The {service}/{username}[{user_id}]/[{published}] [{id}]/[{index}]{name}.{ext} folders are created as they are.

    For example, it is created as follows. \home\naworldw\exthdd\alink\me\TEMPDOWNLOAD\IMAGE\ETC\kemono{service}{username}[{user_id}][{published}] [{id}][{index}]{name}.{ext}\patreon

    bug 
    opened by YTOAA 10
  • PIL Module?

    PIL Module?

    Installed python, pip install bs4, got cookie.txt, tried id 35774349 Got error about missing module PIL

    Traceback (most recent call last):
      File "C:\Users\USER\Downloads\Kemono-DL\kemono-dl.py", line 11, in <module>
        from PIL import Image
    ModuleNotFoundError: No module named 'PIL'
    

    Tried pip install PIL, got

    ERROR: Could not find a version that satisfies the requirement PIL (from versions: none)
    ERROR: No matching distribution found for PIL
    

    Not sure what I should do. (I tried installing pillow but that gave other errors so im guessing that wasnt the solution

    opened by GithubGuest99 10
  • Downloader fails to get creator info

    Downloader fails to get creator info

    NSFW

    Version

    Version: 2022.02.26

    Your Command

    
    python kemono-dl.py --cookies kemono.party_cookies.txt --output ".downloads/%(service)s/%(username)s" --links "https://kemono.party/patreon/user/18701935, https://kemono.party/patreon/user/3535362, https://kemono.party/fanbox/user/13651304" --verbose
    

    Description of bug

    Script seems to fail when attempting to get all creators, thus the rest of the program also fails.

    How To Reproduce

    Get cookies while logged into a consumer account, run command as shown above.

    Error messages and tracebacks

    
    DEBUG: Given command: python kemono-dl.py --cookies kemono.party_cookies.txt --output .downloads/%(service)s/%(username)s --links https://kemono.party/patreon/user/18701935, https://kemono.party/patreon/user/3535362, https://kemono.party/fanbox/user/13651304 --verbose
    ERROR: Failed to get creator info from kemono.party
    ERROR: Failed to find user for service:patreon user_id:18701935
    ERROR: Failed to find user for service:patreon user_id:3535362
    ERROR: Failed to find user for service:fanbox user_id:13651304
    DEBUG: Completed in 00:00:00
    INFO: Completed
    
    

    Additional comments

    bug 
    opened by bog4t 9
  • Mislined folder

    Mislined folder

    Version

    Version: latest

    Your Command

    just a regular command

    Description of bug

    Mislined folder compared from old version which is right and new version have a space in front of folder file name

    How To Reproduce

    dunno

    Error messages and tracebacks

    image

    bug 
    opened by afterdelight 8
  • Post is marked as downloaded in the archive file even though it has not been downloaded.

    Post is marked as downloaded in the archive file even though it has not been downloaded.

    version: kemono-dl 2021.10.21 my command: python kemono-dl.py -i --cookies "cookies.txt" --favorite-users -a archive.txt

    As the title says, when the download of a post starts, the ID of the post is written to the archive file. Even if a post contains multiple attachments (e.g. multiple images) and the download of some of them fails, it will not be downloaded again the next time the program is run because it is already written in the archive file. Wouldn't it be better to include them in the archive file when the post download is complete?

    (By the way, thank you for adding the ability to download favorite users in bulk. It was very helpful.)

    bug 
    opened by neuromememachine 8
  • Encountering connection timed out errors from Kemono after running this

    Encountering connection timed out errors from Kemono after running this

    Description

    Used this tool again just today and it caused a bunch of 403 errors at first and failed to download file errors. Now I tried again and it caused connection timed out errors.

    This is the error when I tried to download again:

    requests.exceptions.ConnectTimeout: HTTPSConnectionPool(host='kemono.party', port=443): Max retries exceeded with url: /api/creators/ (Caused by ConnectTimeoutError(<urllib3.connection.HTTPSConnection object at 0x00000239AFDA41C0>, 'Connection to kemono.party timed out. (connect timeout=300)'))
    ERROR:No creator information was retrieved. | exiting
    

    Same error "connection timed out" error when visiting the website in any browser. I have verified that the website isn't down by checking it in one of those "is a website down?" websites.

    Is this due to some new rate limiting? If so, default timeout and retry values should be reconfigured since otherwise downloading a bunch of any user's stuff will cause you to be locked out from Kemono servers for I don't know how long. Maybe there is a dynamic way to do this? But I am not familiar with Kemono server APIs.

    Service, User ID, Post ID

    Doesn't matter what Service, User ID, or Post ID since connection is timed out trying to visit even the website home page.

    opened by ChickenButter 3
  • Warning: URL is not Downloadable

    Warning: URL is not Downloadable

    Version

    Version: 2022.04.28

    Your Command

    python kemono-dl.py --verbose --cookies "cookie.txt" --links https://www.kemono.party/fantia/user/47415

    Description of bug

    When attempting to download from this URL I get a warning/error about it not being downloadable.

    How To Reproduce

    Input the URL and attempt to run

    Error messages and tracebacks

    WARNING:URL is not downloadable | https://www.kemono.party/fantia/user/47415 ERROR:No creator information was retrieved. | exiting

    Additional comments

    Not sure if this URL is simply blocked from having anything downloaded. All posts result in the same warning/error. It comes up first when downloading --from-file. The debug log show's information I've already presented, but it's stated I must attach the debug log so it's below.

    debug.log

    bug 
    opened by Rit76Horizon 1
  • SyntaxError: invalid syntax

    SyntaxError: invalid syntax

    Version

    Version:2022.04.27

    Your Command

    
    python kemono-dl.py --cookies "cookie.txt" --links https://coomer.party/onlyfans/user/nikumikyo
    
    

    Description of bug

    How To Reproduce

    Just used the command

    Error messages and tracebacks

    
    C:\Users\user\Downloads\kemono-dl-2022.04.27>python kemono-dl.py --cookies "cookie.txt" --links https://coomer.party/onlyfans/user/nikumikyo
    Traceback (most recent call last):
      File "kemono-dl.py", line 1, in <module>
        from src.main import main
      File "C:\Users\user\Downloads\kemono-dl-2022.04.27\src\main.py", line 97
        def get_creators(self, domain:str):
                                     ^
    SyntaxError: invalid syntax
    
    

    Additional comments

    bug 
    opened by Turumarth 0
  • Duplicate Files

    Duplicate Files

    When running the program for some creators it's downloading the same files again. I'm assuming hashes(?) have changed for those files because the names have changed, but is there a way to ignore files that have been already downloaded?

    opened by PerseusRex 6
  • DDOS Protection - Too many requests

    DDOS Protection - Too many requests

    I dont whether this is server issue or program issue. It's like server already implement DDOS protection.

    PS F:\Kemono DL> python kemono-dl.py --cookies "cookie.txt" --links https://kemono.party/fanbox/user/5579659 INFO:Downloading posts from kemono.party.party | fanbox | hagure-oekaki | 5579659 INFO:Downloading Post | (R-18)珍しいお宝 INFO:Downloading: 1_30eae496-63d6-401d-8796-f5d055ced9b1.jpg WARNING:Failed to download: 1_30eae496-63d6-401d-8796-f5d055ced9b1.jpg | 429 Too Many Requests | Sleeping for 120 seconds

    opened by Akalil-H 2
  • ERROR:No creator information was retrieved.

    ERROR:No creator information was retrieved.

    WARNING:URL is not downloadable | https://www.kemono.party/fantia/user/48777 ERROR:No creator information was retrieved. | exiting

    how to fix this issue? its seems happened because i was reinstall the python module

    opened by mbledos69 1
Releases(2022.04.27)
  • 2022.04.27(Apr 27, 2022)

    Fixed

    • issue where the program would fail when a post does not have a published date. (all Gumroad posts)
    • issue where the program would fail all future requests after a response of 416.
    Source code(tar.gz)
    Source code(zip)
  • 2022.04.24.2(Apr 25, 2022)

    Fixed

    • issue where not all inline images hosted by the .party site would be downloaded. #88

    Notes:

    run the command pip install pillow it got removed from the requirements.txt

    Source code(tar.gz)
    Source code(zip)
  • 2022.04.24.1(Apr 24, 2022)

  • 2022.04.24(Apr 24, 2022)

    Added

    • --icon Download the users profile icon. Only works when a user url is passed.
    • --banner Download the users profile banner. Only works when a user url is passed.
    • --dms Write user dms to a html file. Only works when a user url is passed.
    • --user-filename-pattern PATTERN Set the file name pattern for icon, banner, and dms.
    • --json Write the post json to a file.
    • --verbose Now writes to a debug.log again (I still need to add more debug information)

    Changed

    • --content-filename-pattern PATTERN --> --other-filename-pattern PATTERN
    • All Default Patterns. Look at bottom of README!

    Known Issues

    • [PATREON] Some post attachments have a patreon url as the file name so there is not a correct file extension!
    • Not really an issue but I know the html files are not formatted pretty.
    Source code(tar.gz)
    Source code(zip)
  • 2022.04.23(Apr 23, 2022)

  • 2022.04.22(Apr 22, 2022)

  • 2022.04.18.1(Apr 18, 2022)

    Lets see if I broke everything, hopefully not! --icon, --banner, --json, and --yt-dlp currently are not implemented. So nothing will happen when using these args. Please read new README!

    Source code(tar.gz)
    Source code(zip)
  • 2022.02.26(Feb 27, 2022)

    Added better template output to control file names not just file paths. Please read how the template output works in the readme! Also I recommend backing up and moving you old downloads folder or setting a new folder location for where files should be downloaded.

    Source code(tar.gz)
    Source code(zip)
  • 2022.02.21(Feb 21, 2022)

    • Added dynamic folder paths for where post files are downloaded. Please look over how the new --output options works here. If you are already using -o, or --output please make changes before running.
    • Also for now all post files have the post id appended to the front of the file name for when an --output places multiple posts files in the same folder.
    Source code(tar.gz)
    Source code(zip)
  • 2022.02.10(Feb 10, 2022)

    Because kemono.pary won't fix broken parteon files whose file names are set as "https://www.patreon.com/media-u/gfggdffgfhfhfhh" I have added a workaround. The file name will still be the url but my program will add the proper file extension for the file. Whenever you get a warning saying that one of these broken file names has been encountered please report it to kemono.party so they will fix it.

    Source code(tar.gz)
    Source code(zip)
  • 2022.02.09(Feb 9, 2022)

  • 2022.02.08(Feb 8, 2022)

  • 2022.01.29(Jan 30, 2022)

    • 416 errors are now counted as warnings.
      • If you get the 416 warning please check the file downloaded correctly and then report the file for having an incorrect file name hash to kemono or coomer partys message boards. The incorrect file name hash is a problem on their backend not with the downloader.
      • If the file is incorrect or broken please make an issue report here so I can look into it.
    • Added partial discord support
      • Will download all images for a given discord server.
      • Currently follows the file path format described here #48.
      • --update, --archive and any of the --date options have not been implemented for discord.
      • No html is created to display the messages like discord messages yet.
    Source code(tar.gz)
    Source code(zip)
  • 2022.01.11.1(Jan 12, 2022)

    • Added partial discord support
      • Will download all images for a given discord server.
      • Currently follows the file path format described here #48.
      • --update, --archive and any of the --date options have not been implemented for discord.
      • No text html is created to display the messages.
    Source code(tar.gz)
    Source code(zip)
  • 2022.01.11(Jan 11, 2022)

  • 2022.01.05(Jan 5, 2022)

    • Better memory management.
      • No longer saving all post jsons in a list, with multiple users this could use a lot of memory.
      • Now downloads every individual post right away and downloads all user posts in chunks of 25.
    Source code(tar.gz)
    Source code(zip)
  • 2021.12.31(Dec 31, 2021)

  • 2021.12.30.01(Dec 30, 2021)

    • --simulate now does not download anything and wont write to archive file. (archive file will still be read from)
    • --skip-content can be used separately with --skip-inline and --extract-links
    • --skip-embed can be used separately with --yt-dlp
    Source code(tar.gz)
    Source code(zip)
  • 2021.12.30(Dec 30, 2021)

  • 2021.12.29.01(Dec 29, 2021)

  • 2021.12.29(Dec 29, 2021)

  • 2021.12.23(Dec 23, 2021)

  • 2021.12.22(Dec 22, 2021)

  • 2021.12.21.1(Dec 22, 2021)

    • Completely re wrote every thing. Why? idk I'm dumb.
    • Deprecated some of the functions
    • Should be more stable
    • File structure has changed slightly and files are prepended with an index number by default now. Sorry for the inconvenience.
    • Please report any errors. If to many errors please use the 2021.12.07 release
    Source code(tar.gz)
    Source code(zip)
  • 2021.12.13(Dec 13, 2021)

    Experimental coomer.party support

    Added support for coomer.party. You will need cookies from coomer.party. You can use both cookies.txt like this --cookies "kemono.txt,coomer.txt". I also re worked a bunch of stuff also probably broke a lot of stuff. Have not done a lot of testing but with the ones I tried it worked.

    Source code(tar.gz)
    Source code(zip)
  • 2021.12.07(Dec 7, 2021)

  • 2021.12.06(Dec 6, 2021)

  • 2021.11.03(Nov 3, 2021)

  • 2021.11.01(Nov 1, 2021)

    • Added checking file hash and skipping download. (using --archive is still recommended over just relying on the hash checker)
      • Some files on kemono seem to have the wrong hash in their file name so some files might get redownloaded.
    • Fixed retry being broken.
    Source code(tar.gz)
    Source code(zip)
  • 2021.10.30.1(Oct 30, 2021)

Owner
I program sometimes.
Ripurei is a free-to-use osu! replay downloader, that can be configured to download from any osu! server.

Ripurei Ripurei is a fully functional osu! replay downloader, fully capable of downloading from almost any osu! server. Functionality Timeline ✔️ Able

Thomas 0 Feb 11, 2022
YouTube to MP3 or 4, you get to choose...

UTubeToMP YouTube to MP3 or 4, you get to choose... If you don't wanna git clone andor dont wanna install python. Here: Repl.it Instructions: Pretty s

1 Jan 29, 2022
Download images where login is required using har python and js

이미지 다운로드(har, python, js 사용) 로그인이 필요한 사이트에서 DevTools로 이미지를 다운받는 방법은 조금 까다로웠다. 가장 쉽게 할 수 있는 방법을 찾아보았다. 사용법 F12를 눌러 DevTools를 실행 Network 탭으로 이동 페이지 새로고침

0 Jul 22, 2022
New York Times Front Page Downloader.

TIMETRAVELER New York Times Front Page Downloader. Usage python3 timetraveler.py All data will be saved at ~/timetraveler/ Goals To keep a historica

Daeshon Jones 0 Oct 31, 2021
pubmex.py - a script to get a fancy paper title based on given DOI or PMID

pubmex.py is a script to get a fancy paper title based on given DOI or PMID (can be also combined with macOS Finder)

Marcin Magnus 13 Nov 20, 2022
抖音批量下载助手

抖音批量下载助手

HuangSK 303 Jan 05, 2023
Fast TikTok NO Watermark Video Downloader (username or url)

💎 TD [ TikDown v4 ] Star ⭐ if you want more Discord Server * discord.gg/onlp | Waxor#9999 Why not open source anymore ? * BECAUSE PEOPLE SKID, STEA

Tekky 26 Dec 01, 2022
Downloads separate (specified) file to a randomly generated folder in /TEMP then executes it.

PyTemp-1 A Python3 file downloader. What you do with this code / project / idea is non of my buisness or concern, and this was made for **educational*

NightTab 1 Aug 03, 2022
A small distributed download manager to help bypass device-specific bandwidth limitations.

Distributed Download Manager A small distributed download manager to help bypass device-specific bandwidth limitations. Architecture The download mana

Anand Balaji 3 Sep 23, 2022
Animoo - Python scraper made with BeautifulSoup4 that scrapes images from /c/.

Animoo - Python scraper made with BeautifulSoup4 that scrapes images from /c/. Features Scrapes 10 pages Scrapes each thread Downloads all the images

aether 1 Dec 29, 2021
Smule Video Downloader

Smule Video Downloader Using Requests,Re & Urllib Installation - apt install git (for vps) or pkg install git (for termux)

Hansen Gianto 4 Aug 31, 2022
Download India Stocks Historical Data

Kite Helper - Download Stock Market Data 🌎 Website Simple Application to Download any stock market data in .csv format using Kite 🏃‍♂️ Running Serve

Pishang Ujeniya 12 Dec 06, 2022
Downloads and Updates GOG Galaxy 2.0 Plugins/Integrations

GOG Galaxy Plugins Downloader Summary This program downloads GOG Galaxy 2.0 Plugins and installs them to the proper location. You probably do not want

slashbunny 253 Dec 12, 2022
A YouTube downloader which allows you to choose which video you want

Youtube Video Downloader Download multiple videos in one go! How to Use 1.First type the video you want to download 2.On clicking the Search button yo

2 Dec 17, 2021
Python youtube playlist downloader

Youtube-Playlist-Downloader-python 👍 This program is a simple Youtube playlist downloader where you input the playlist link, and then the desired pat

Pepczenko 2 Dec 25, 2021
Pantheon - The fastest YouTube downloader.

A Youtube downloader written in Python3, using HTTP requests and an API.

Billy 38 Nov 21, 2022
Twayback: Downloading deleted Tweets from the Wayback Machine, made easy

Finding and downloading deleted Tweets takes a lot of time. Thankfully, with this tool, it becomes a piece of cake! 🎂

126 Dec 27, 2022
PyQt5 simple files , youtube videos and youtube playlist downloader

PyQt5 simple files , youtube videos and youtube playlist downloader

AmirHossein Mohammadi 7 Jul 25, 2022
Download Photo and Video from Wall of specific user or community

vkontakte-downloader Download Photo and Video from Wall of specific User or Community on https://vk.com Setup Clone the project git clone https://gith

4 Jul 20, 2022
A Python script that allows you to download all of an anime's episodes at once.

BitAnime A Python script that allows you to download all of an anime's episodes at once. · Download executable version · About BitAnime BitAnime is a

sh1nobu 17 Aug 10, 2022