Giter Site home page Giter Site logo

gog-galaxy-export-script's Introduction

GOG Galaxy 2.0 Export Script

This script helps a user export their GOG Galaxy 2.0 Library.

Usage

Through the use of command line parameters, you can decide what data you want exported to the CSV. Some of the options include the list of platforms (--platforms), playtime in minutes (--playtime), developers, publishers, genres and much more. You can read the help manual by invoking the script without parameters, to find an up to date list of all the possible export options.

If you want to use the CSV in a different tool, such as the HTML5 library exporter, you can default to the -a parameter to export everything.

When a different locale wants a different CSV delimiter (such as the Italian), you can manually specify the character to use (-d <character>).

Also, you can manually specify the database location (-i) and the CSV location (-o), instead of using the default ones.

If the CSV has to be read by a Python script, you can use the option --py-lists to export python compatible list strings that can be reconverted in python objects through ast's literal_eval, which avoids several (potentially incorrect) string split/joins.

If you also want to export all available dlcs use the --dlcs-details argument. With that all dlcs are handled as "games" and will be exported with all available infos.

settings.json

The settings.json allows to handle dlcs as game and export them accordingly or treat any release (game, dlc, soundtrack, goodies pack etc.) as dlc of another game, if they are not already linked in the database.

  • TreatDLCAsGame: Aarray of release-keys which should be treated as a game instead of a dlc
    • Used to mark games which are (mistakenly) treated as dlcs by the gog galaxy client as games.
    • All entries with a matching release-key will be exported with all available data.
    • This will not change the link between a dlc and his parent game if it really is a dlc.
  • TreatReleaseAsDLC: Dictionary which maps the releaseKey of a game to a list of dlcs.
    • Used to mark any release which is (mistakenly) treated as a game by the gog galaxy client as dlc.
    • The dlcs specified in the settings.json are joined with the list of dlcs found in the database.
    • TreatReleaseAsDLC is evaluated after TreatDLCAsGame. If a release-key is present in TreatDLCAsGame and also mapped to another release-key with TreatReleaseAsDLC than this release-key is handled as dlc.
    • This will not override the original link between a dlc and it's parent game. If a dlc is mapped to another game it will be present in the dlc list of this game and the original game.

Dependencies

  • Python 3
    • csv
    • natsort

Platform Support

All platforms from the official list are supported. Some are not listed at the moment but should still show up correctly in the output.

Wiki

Check the Wiki tab.

Roadmap

Check the Projects tab.

Contribution

Feel free to add issues and pull requests.

License

This repository is licensed under the MIT License.

gog-galaxy-export-script's People

Contributors

themelmacian avatar varstahl avatar ab1908 avatar janpokorny avatar jahire2 avatar toastmonster 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.