Download all games from a public Itch.io Game Jam

Related tags

Downloaderitch-dl
Overview

Itch Jam Downloader

Downloads all games from a public Itch.io Game Jam.

What you'll need:

  • Python 3.8+
  • pip install -r requirements.txt
  • For site mirroring, wget in your PATH.

On Arch, pacman -S wget python python-requests python-slugify works.

How to use this:

  • Go to your jam's page, ex. https://itch.io/jam/gbcompo21 and right-click -> View Source.
  • Ctrl-F for "id": - it should find that text once, followed by a number. Write it down.
  • (It you found it multiple times, grab the one after ViewJam something something.)
  • Download https://itch.io/jam/NUMBER/entries.json (replacing NUMBER with what you wrote down)
  • Generate a new API key on your user account page: https://itch.io/user/settings/api-keys
  • Run the downloader: python downloader.py --api-key entries.json
  • Wait. This is going to take a while.

The downloader is able to grab more or less everything you can download via the itch app.

It's expected that the downloader output will not be complete - logs are stupidly verbose and it prints a report on successful/failed downloads, so you must manually grab whatever was not handled for you automatically for some reason.

The downloader also grabs the entry page HTML, which usually comes with controls and such. It does not download images, external assets and so on, just the text - if the Itch page dies, so will most elements on those downloaded pages. Controls should survive, though.

(There's a pedantic mirroring toggle in the script, if you know what you're doing though.)

You might also like...
You Can download any video/image in all social medias very easy and High Speed.
You Can download any video/image in all social medias very easy and High Speed.

All-Downloader You Can download any video/image in all social medias very easy and High Speed. also you can easily download videos from web browsers s

Python module to download all media from a CyberDrop gallery.
Python module to download all media from a CyberDrop gallery.

CyberDrop Downloader Intro Let's suppose you found out the Eva G (bby_gee) leak on https://cyberdrop.me/a/aWAt4TWY. You wish you could download the en

Python module to download all media from a GoFile gallery.

GoFile Downloader Setup First of all, clone this repository : ~$ git clone https://github.com/quatrecentquatre-404/gofile-downloader Second, oh wait..

๐Ÿ‘ป๐ŸŸก  Download all Snapchat video & photo memories from a data export.
๐Ÿ‘ป๐ŸŸก Download all Snapchat video & photo memories from a data export.

Snapchat "Memories" Fetcher In compliance with the California Consumer Privacy Act of 2018 (โ€œCCPAโ€), businesses which collect and store user data must

Heroic-gogdl - GOG Downloading module for Heroic Games Launcher

heroic-gogdl GOG download module for Heroic Games Launcher Purpose This will tak

Simple tool downloads public PoC (refer from nomi-sec)

PoC Collection This is the little script to collect the proof-of-concept which is refered from nomi-sec. The repository now is only develop for linux-

A modern CLI to download animes automatically from Twist
A modern CLI to download animes automatically from Twist

Kurby Kurby is a nice and simple CLI that use Twist website, and their huge collection to download animes for free and automatically Animes from Twist

Download courses from khanacademy.org

khan-dl A python script to download courses from Khan Academy using youtube-dl and beautifulsoup4.

1Fichier Download Manager.
1Fichier Download Manager.

1fichier-dl 1Fichier Download Manager. Features โญ Manage your downloads โญ Bypass time limits Credits All icons, including the app icon, were provided

Comments
  • NotImplementedError: Unknown infobox block name 'Category'

    NotImplementedError: Unknown infobox block name 'Category'

    Hi!

    INFO:root:Downloading https://andreipasynkov.itch.io/upandown
    Traceback (most recent call last):
      File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
        return _run_code(code, main_globals, None,
      File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
        exec(code, run_globals)
      File "/tmp/itch-dl/itch_dl/__main__.py", line 3, in <module>
        run()
      File "/tmp/itch-dl/itch_dl/cli.py", line 68, in run
        return drive_downloads(jobs, download_to, args.mirror_web, args.api_key, keys, parallel=args.parallel)
      File "/tmp/itch-dl/itch_dl/downloader.py", line 350, in drive_downloads
        results = [downloader.download(job) for job in tqdm(jobs, **tqdm_args)]
      File "/tmp/itch-dl/itch_dl/downloader.py", line 350, in <listcomp>
        results = [downloader.download(job) for job in tqdm(jobs, **tqdm_args)]
      File "/tmp/itch-dl/itch_dl/downloader.py", line 240, in download
        metadata = self.extract_metadata(game_id, url, site)
      File "/tmp/itch-dl/itch_dl/downloader.py", line 149, in extract_metadata
        infobox = parse_infobox(infobox_div)
      File "/tmp/itch-dl/itch_dl/infobox.py", line 116, in parse_infobox
        parsed_block = parse_tr(name, content_td)
      File "/tmp/itch-dl/itch_dl/infobox.py", line 100, in parse_tr
        raise NotImplementedError(f"Unknown infobox block name '{name}' - please file a new itch-dl issue.")
    NotImplementedError: Unknown infobox block name 'Category' - please file a new itch-dl issue.
    

    ...so I did! Got this from https://itch.io/jam/game-boy-showdown.

    opened by ISSOtm 2
  • Open JSON files in binary mode

    Open JSON files in binary mode

    This avoids any encoding errors caused by JSON files containing non-ASCII characters (e.g. emojis).

    I'm not sure if this encoding issue occurs just on Windows (the corresponding stack trace stems from CP-1252), but I think opening the file in binary mode is the right way to go anyway.

    For reference, here's the traceback logged when trying to load a file which has some emojis in the JSON:

    Traceback (most recent call last):
      File "itch-dl\venv\Scripts\itch-dl", line 5, in <module>
        run()
      File "itch-dl\itch_dl\cli.py", line 60, in run
        jobs = get_jobs_for_url_or_path(args.url_or_path, settings)
      File "itch-dl\itch_dl\handlers.py", line 191, in get_jobs_for_url_or_path
        return get_jobs_for_path(path_or_url)
      File "itch-dl\itch_dl\handlers.py", line 154, in get_jobs_for_path
        json_data = json.load(f)
      File "C:\Python310\lib\json\__init__.py", line 293, in load
        return loads(fp.read(),
      File "C:\Python310\lib\encodings\cp1252.py", line 23, in decode
        return codecs.charmap_decode(input,self.errors,decoding_table)[0]
    UnicodeDecodeError: 'charmap' codec can't decode byte 0x8f in position 22612: character maps to <undefined>
    
    opened by jackwilsdon 1
  • Allow toggling Download Key caching

    Allow toggling Download Key caching

    It's possible to query the API for any available Download Keys directly for a Game ID, instead of downloading them all before the fact. This would be faster for a small amount of titles to download, especially if the user has a ton of purchased/claimed games.

    opened by DragoonAethis 0
Releases(0.3.2)
  • 0.3.2(Nov 1, 2022)

  • 0.3.1(Jun 12, 2022)

  • 0.3.0(Jun 12, 2022)

    • Added Settings - it's now possible to permanently set an API key instead of providing it every single time on the command line. (Using the config file is not mandatory.)
    • itch-dl now depends on Pydantic for config file validation.
    • The User Agent is now being set to python-requests/{version} itch-dl/{version} by default. This is configurable.
    • Misc cleanups, typing fixes and more descriptive error messages with wiki links.
    Source code(tar.gz)
    Source code(zip)
  • 0.2.1(May 30, 2022)

  • 0.2.0(May 15, 2022)

Owner
Dragoon Aethis
Dragoon Aethis
๐ด ๐‘ก๐‘’๐‘™๐‘’๐‘”๐‘Ÿ๐‘Ž๐‘š ๐‘๐‘œ๐‘ก ๐‘กโ„Ž๐‘Ž๐‘ก ๐‘๐‘Ž๐‘› ๐‘‘๐‘œ๐‘ค๐‘›๐‘™๐‘œ๐‘Ž๐‘‘ ๐‘ฃ๐‘–๐‘‘๐‘’๐‘œ ๐‘Ž๐‘›๐‘‘ ๐‘Ž๐‘ข๐‘‘๐‘–๐‘œ ๐‘“๐‘Ÿ๐‘œ๐‘š ๐‘ฆ๐‘œ๐‘ข๐‘ก๐‘ข๐‘๐‘’ ๐‘Ž๐‘›๐‘‘ ๐‘ฃ๐‘–๐‘‘๐‘’๐‘œ ๐‘ค๐‘’๐‘๐‘ ๐‘–๐‘ก๐‘’๐‘  ๐‘ž๐‘ข๐‘–๐‘๐‘˜๐‘™๐‘ฆ

๐ด ๐‘ก๐‘’๐‘™๐‘’๐‘”๐‘Ÿ๐‘Ž๐‘š ๐‘๐‘œ๐‘ก ๐‘กโ„Ž๐‘Ž๐‘ก ๐‘๐‘Ž๐‘› ๐‘‘๐‘œ๐‘ค๐‘›๐‘™๐‘œ๐‘Ž๐‘‘ ๐‘ฃ๐‘–๐‘‘๐‘’๐‘œ ๐‘Ž๐‘›๐‘‘ ๐‘Ž๐‘ข๐‘‘๐‘–๐‘œ ๐‘“๐‘Ÿ๐‘œ๐‘š ๐‘ฆ๐‘œ๐‘ข๐‘ก๐‘ข๐‘๐‘’ ๐‘Ž๐‘›๐‘‘ ๐‘ฃ๐‘–๐‘‘๐‘’๐‘œ ๐‘ค๐‘’๐‘๐‘ ๐‘–๐‘ก๐‘’๐‘  ๐‘ž๐‘ข๐‘–๐‘๐‘˜๐‘™๐‘ฆ

SOCIAL MECHANIC 2 Aug 04, 2022
Ebook downloader built using python

ebook-downloader Getting Started Open a terminal and run the following commands. git clone github.com/georgemunyoro/ebook-downloader cd ./ebook-downlo

George Munyoro 1 Oct 19, 2021
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
Easy automated ebook downloader using openbooks as the backend

Easy automated ebook downloader using openbooks as the backend

27 Nov 06, 2022
Pantheon - The fastest YouTube downloader.

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

Billy 38 Nov 21, 2022
A simple GUI video downloader built off of the python module 'yt-dlp'

Simple-Youtube-DL-Gui Supported Operating Systems Windows 7 (x64), Windows 8 (x64), and Windows 10 (x64) How to use Main Gui Extract program from arch

12 Dec 30, 2022
A Spotify downloader needing only a python interpreter and ffmpeg.

ZSpotify A Spotify downloader needing only a python interpreter and ffmpeg. Discord Server - Matrix Server - Gitea Mirror - Main Site Requirements: B

2.4k Dec 14, 2021
Downloads data from OSM API and uploads it to the mapping sandbox.

OpenStreetMap To Sandbox This is a script to download data from OSM API and upload it to the mapping sandbox. Note that it clears all data in the sand

Ilya Zverev 5 Nov 27, 2022
Tool To download Amazon 4k SDR HDR 1080, CDM IS Not Included

WV-AMZN-4K-RIPPER Tool To download Amazon 4k SDR HDR 1080, CDM IS Not Included For CDM You can Mail :- 11 Dec 23, 2021

A simple Python +3.x script to download videos from Facebook.

Facebook Video Downloader A simple Python +3.x script to download videos from Facebook posts

Kerolos Atef Saber 1 Dec 03, 2021
FireDM is a python open source (Internet Download Manager) with multi-connections, high speed engine, it downloads general files and videos from youtube and tons of other streaming websites .

python open source (Internet Download Manager) with multi-connections, high speed engine, based on python, LibCurl, and youtube_dl https://github.com/firedm/FireDM

1.6k Apr 12, 2022
A growing collection of search plugins for the qBittorrent, an awesome and opensource torrent client

qBittorrent Search Plugins This is a still growing collection of search plugins for qBittorent, an amazing and open source torrent client, maintained

Alessio Tudisco 59 Dec 26, 2022
The lyrics module of the repository apple-playlist-downloader

This is the lyrics module of the repository apple-playlist-downloader. With this code you can download the .lrc file (time synced lyrics) from yours t

Antoine Bollengier 6 Oct 07, 2022
๐Ÿ”ฅ A Bot To Telegram For Download High Qulity Videos & Songs From Youtube

๐Ÿ”ฅ A Bot To Telegram For Download High Qulity Videos & Songs From Youtube ๐ŸŽ— Fast And Free Bot No Need To Pay โœ… By SL-Alpha-X-Team โšก

Official Alpha-X-Team Account 7 Aug 31, 2022
VD Song Bot - A telegram bot that can download songs

VD Song Bot A telegram bot that can download songs Reach me on Telegram @MusicVNDbot Deploy to Heroku The easiest way to deploy this Song Bot Mandator

Venuja Thilakarathna 2 Feb 19, 2022
Python script for downloading audio from YouTube songs/videos.

Python script for downloading audio from YouTube songs/videos. All you have to do is specify the path to your folder and then type song's/video's name and the sound will be downloaded into your folde

Mateusz Polis 0 Oct 05, 2022
Download YouTube videos that are available in the given playlist

Youtube-Playlist-Downloader Download YouTube videos that are available in the given playlist Project assets: music downloaded music folder. (will be g

Sultan Aljaberi 1 Dec 22, 2021
Youtube Downloader by PyTube รฉ uma ferramenta simples com interface grรกfica e escrito em python para baixar vรญdeos e playlists do youtube...

YouTube Downloader by PyTube O que รฉ o YouTube Downloader by PyTube? YouTube Downloader by PyTube รฉ um software simples para baixar vรญdeos no YouTube

Elizeu Barbosa Abreu 5 Jul 30, 2022
YouTube Downloader Bot With Python

TG YแดแดœTแดœส™แด‡ Uแด˜สŸแดแด€แด…แด‡ส€ * Commands YouTube for Audio & Video and sends it to telegram after receiving valid URL [Do not forwarded any just copy and paste

Pส€แด‡แด…แด€แด›แดส€ 5 Oct 21, 2022
ๅˆฉ็”จpython3๏ผŒ็ˆฌๅ–ๅนถไธ‹่ฝฝ91porn็ฝ‘็ซ™ไธŠ้ข็š„่ง†้ข‘

91porn_python ๅˆฉ็”จpython3๏ผŒ็ˆฌๅ–ๅนถไธ‹่ฝฝ91porn็ฝ‘็ซ™ไธŠ้ข็š„่ง†้ข‘ ๅขžๅŠ ็ˆฌๅ–t66y่ฎบๅ›ๅ›พ็‰‡็š„่„šๆœฌ ่ฏฅ่„šๆœฌๆ”ฏๆŒไธ€ไธ‹ๅŠŸ่ƒฝ๏ผš ๆ”ฏๆŒๅคš็บฟ็จ‹ ไธ‹่ฝฝ่ง†้ข‘ๆœ‰่ฟ›ๅบฆๆกๆ˜พ็คบ ๆ”ฏๆŒไปŽ็‰นๅฎš้กต็š„็‰นๅฎš่ง†้ข‘ๅผ€ๅง‹ไธ‹่ฝฝ ๅฐ†m3u8ๅ’Œmp4ๆ ผๅผ็š„่ง†้ข‘ไธ‹่ฝฝๅˆฐไธๅŒๆ–‡ไปถๅคน๏ผŒๅŠ ไปฅๅˆ†็ฑป ่‡ชๅŠจ่ฟ‡ๆปคๅทฒ็ปไธ‹่ฝฝ่ฟ‡็š„่ง†้ข‘

253 Feb 23, 2021