Hentai

Latest version: v3.2.10

Safety actively analyzes 714815 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 4

3.1.4

Improves error message feedback for raised exceptions and deprecates all static
`Tag` methods in favor of

- `Tag.get(cls, tags: List[Tag], property: str) -> str:`

Besides, the `self.download` method in `Hentai` replaces the `dest` keyword argument
with `folder`, i.e. the name of the folder where the images are to be stored. The
new default name for this folder corresponds to the `id` of this doujin. A previous
internal method is also now exposed in the pubic interface:

- `self.dictionary(options: List[Option]=None) -> dict`

This method returns a flattened dictionary whose key-value pairs are determined
by the list of options passed as argument to this method. Also note that the

- `Utils.get_homepage(handler=RequestHandler()) -> Homepage`

method lost its `page: int=1` keyword argument.

3.1.3

This version improves the general quality of the code and adds a missing feature
to the `get_homepage` function. It now returns an object that gives access to the
`popular_now` and `new_uploads` section as a list of hentai objects. In previous
versions, `new_uploads` was returned implicitly.

Furthermore, the `Utils.download` function now takes `doujins: List[Hentai]` instead
of `ids: List[int]` as main parameter to reduce the total number of calls made to
the API.

Also notice that the following export options have been renamed:

- `Option.Favorites` now is `Option.NumFavorites`
- `Option.UploadDate` now is `Option.Epos`
- `Option.PageCount` now is `Option.NumPages`

3.1.2

Fixes an error in `RequestHandler` where `retry_strategy` passed its arguments
in the wrong order to `Retry` which caused the session to halt at times, courtesy
of kiranajij <kiranajij216gmail.com>.

On top of that, this patch also adds an `exists` decorator to the `Utils` class
for better error handling.

3.1.1

Deprecates the `make_request` parameter everywhere and adds proper error handling
to both download functions. Changes doc strings to the restructured text format
because of the better linting support. Lastly, this patch removes old artifacts
which considerably reduces the file size of this module.

3.1.0

This version adds a `progressbar` option (disabled by default) to the following
functions:

- `self.download` in `Hentai`
- `Utils.download`
- `Utils.browse_homepage`
- `Utils.search_all_by_query`

Another new feature allows a direct comparison between `Hentai` objects based on
their ID:

- `__gt__` (`>`)
- `__ge__` (`>=`)
- `__eq__` (`==`)
- `__le__` (`<`)
- `__lt__` (`<=`)
- `__ne__` (`!=`)

Additionally, you can now also access the `epos` value directly in `Hentai`
by property instead of going back and forth between conversions. Lastly, the
following fields are now readonly:

- `self.id`
- `self.json`
- `self.url`
- `self.api`
- `self.handler`
- `self.response`

This upgrade also fixes an error that previously occurred when you used the `Option.Raw`
option in `Utils.export`. Last but not least, the `RequestHandler._timeout` value
has been relaxed to `(5,5)`.

3.0.0

This will be the last major update to this library as work on this project slowly
comes to an end. In this version,

- Virtually all static methods in the `Hentai` have been removed - use their
corresponding properties instead. This change drastically reduces the number of
lines of code in the main class
- The following functions have been renamed:
- `Utils.static_export` now is `Utils.export`
- `Utils.download_queue` now is `Utils.download`
- Adds `List[Hentai]` as type hint to `Utils.export`
- Additionally, three more properties have been added to the `Hentai` object:
- `self.group`
- `self.parody`
- `self.character`
- Adds export of all new options mentioned above
- The magic method `__repr__` changes its output to `Hentai(ID={self.id})`
- Updates & improves doc strings

Page 3 of 4

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.