Giter VIP home page Giter VIP logo

itchio's Introduction

IMPORTANT NOTICE: up until 2022-03-09, the package was called itchio, it is now called itchiodl (to avoid pypi conflicts)

Itchio Downloader Tool

Install

pip install itchiodl

Download All Games in library from account

Please Note: Having too many jobs may cause rate-limiting from some testing 8 works fine but 10 starts giving errors.

# via python
python -m itchiodl.downloader

# via setup-tools entry point
itch-download

This uses the same API the itchio app uses to download the files. If you have 2FA enabled, generate an API key here and run the following instead

# via python (with 4 concurrent downloads)
python -m itchiodl.downloader --api-key=KEYHERE --jobs=4

# via setup-tools entry point
itch-download -k KEYHERE

# download with multiple threads
itch-download -k KEYHERE -j 4

# only download osx or cross platform downloads
itch-download -p osx

# folder structure uses display names for users/publishers and game titles
itch-download --human-folders

Add All Games in a bundle to your library

# via python
python -m itchiodl.bundle_tool

# via setup-tools entry point
itch-load-bundle

This is a bit of a bodge, but it works. It essentially goes through and clicks the "Download" link on every item on the bundle's page, which adds it to your itchio library. It does not download any files. You will need the download page's URL (this will be in the bundle's email, and possibly your purchase history). It will not work with 2FA, and I'm unlikely to be able to fix it without making it far more complicated

Errors

if a download fails it will be reported in errors.txt in the same directory as your downloads

An example of which could look something like this:

Publisher Name: <Publisher Name>
Output File: <Publisher Name>/<Game Name>/<Specific Item>
Request URL: <Some URL>
Request Response Code: 404
Error Reason: Not Found
This game/asset has been skipped please download manually
---------------------------------------------------------

This is not a perfect solution but does prevent the whole process from crashing

itchio's People

Contributors

emersont1 avatar triple-j avatar n64core avatar ashpieboop avatar github-actions[bot] avatar

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.