Skip to main content

A simple H@H database

Project description

H2HDB

Description

The H2HDB is a comprehensive database for organising and managing H@H comic collections. It offers a streamlined way to catalogue your comics, providing key information such as GID (Gallery ID), title, tags and more, ensuring your collection is always organised and accessible.


Features

  • Add new galleries to the database
  • Comporess H@H's galleries to a folder
  • Add the galleries' tags to Komga
  • Record the removed GIDs in a separate list
  • Write document (need?)

Installation and Usage

  1. Install Python 3.12 or higher from python.org.

  2. Clone the repository.

    git clone https://github.com/Kuan-Lun/h2hdb.git # It will download a folder 'h2hdb'.
    
  3. Install the required packages.

    python -m venv .venv # Create a virtual environment.
    ./.venv/Scripts/python -m pip install -r ./h2hdb/requirements.txt # Install the required packages.
    ./.venv/Scripts/python -m pip install -e ./h2hdb/[mysal,cbz,komga,synochat] # Install the h2hdb packages.
    rm -rf ./h2hdb/ # Remove the downloaded 'h2hdb' folder.
    
  4. Run the script.

    ./.venv/Scripts/python -m h2hdb --config [json-path]
    

Config

{
    "h2h": {
        "download_path": "[str]", // The download path of H@H. The default is `download`.
        "cbz_path": "[str]", // The cbz in this path.
        "cbz_max_size": "[int]", // The maxinum of the mininum of width and height height. The default is `768`.
        "cbz_grouping": "[str]", // `flat`, `date-yyyy`, `date-yyyy-mm`, or `date-yyyy-mm-dd`. The default is `flat`.
        "cbz_sort": "[str]" // `upload_time`, `download_time`, `pages`, or `pages+[num]`. The default is `upload_time`.
    },
    "database": {
        "sql_type": "[str]", // Now only supports `mysql`. The default is `mysql`.
        "host": "[str]", // The default is `localhost`.
        "port": "[str]", // String, not Integer. The default is `3306`.
        "user": "[str]", // The default is `root`.
        "password": "[str]" // The default is `password`.
    },
    "logger": {
        "level": "[str]" // One of NOTSET, DEBUG, INFO, WARNING, ERROR, CRITICAL.
    },
    "media_server": {
        "server_type": "[str]", // Now only supports `komga`. The defult is ``.
        "server_config": {
            "base_url": "[url]", // The media server's base url.
            "api_username": "[str]", // The media server's administrator.
            "api_password": "[str]", // The password of the media server's adimistrator.
            "library_id": "[str]" // The libary ID for komga.
        } // The defult is null.
    }
}

Q & A

  • How to use Komga? See Rainie's article.

  • How to find library IDs in Komga? To find your library ID, log into komga's library. Look at the URL in your browser’s address bar, which will be formatted like this: [base_url]/libraries/[library_id]/series. In this URL, the [library_id] part is your library ID.

  • Why aren't the tags for CBZ-files in Komga updated? When you first run H2HDB, it generates CBZ-files. These CBZ-files are not immediately visible in Komga's library. To update them, you have two options: you can either click the 'scan library files' button in Komga, or you can run H2HDB twice. The first run scans the library, and the second run updates the tags.

  • Why are some images missing from the CBZ-files? H2HDB does not compress images that are considered spam according to certain rules. If you encounter any images that you believe should have been included, please report the issue.

  • Why are some images in some CBZ files and not in other CBZ-files? H2HDB learns the spam rule from the previous CBZ files. If you kill the CBZ files containing these images, the new CBZ files will not contain these images.


Credits

The project was created by Kuan-Lun Wang.


License

This project is distributed under the terms of the GNU General Public Licence (GPL). For detailed licence terms, see the LICENSE file included in this distribution.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

h2hdb-0.6.68.60.tar.gz (40.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

h2hdb-0.6.68.60-py3-none-any.whl (43.5 kB view details)

Uploaded Python 3

File details

Details for the file h2hdb-0.6.68.60.tar.gz.

File metadata

  • Download URL: h2hdb-0.6.68.60.tar.gz
  • Upload date:
  • Size: 40.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.13.1

File hashes

Hashes for h2hdb-0.6.68.60.tar.gz
Algorithm Hash digest
SHA256 f2120313a009a740ce8b357bf96d1b6e0d90e007898fb10bb9fa06c9eda7f172
MD5 9e8b8179667901e59abb490f1293d34c
BLAKE2b-256 ec52353971918a552d09da2eb438705713c1de09c4a7cc08bd1dcf8a30758ace

See more details on using hashes here.

File details

Details for the file h2hdb-0.6.68.60-py3-none-any.whl.

File metadata

  • Download URL: h2hdb-0.6.68.60-py3-none-any.whl
  • Upload date:
  • Size: 43.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.13.1

File hashes

Hashes for h2hdb-0.6.68.60-py3-none-any.whl
Algorithm Hash digest
SHA256 ba5cad8e3c4c59934726fb9822cbf9e47f6f3db6961bfdfa511937238f56c3d9
MD5 9abb554557dea32a1762e56953f7e784
BLAKE2b-256 b0c2003fdb480f162d2b2a41e9e9902438caa90f8e3dacbfe5df66e077b126b5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page