DoujinHentai: Rework & Fix 404#15008
Merged
AwkwardPeak7 merged 11 commits intokeiyoushi:mainfrom Apr 26, 2026
Merged
Conversation
Bump overrideVersionCode to 3 and overhaul the DoujinHentai extension to match updated site structure. Update selectors and endpoints (use lista-manga-hentai / lista-de-...), unify popular/latest handling, and implement robust search routing (text search + route-based filters for genre/artist/author/scanlator/letter/type and order). Rework manga details and chapter parsing (author/artist extraction, status, thumbnails, improved chapter naming and scanlator/date parsing using a lazy SimpleDateFormat). Add comprehensive filters (Genre, Type, Artist, Author, Scanlator) and expand genre list. Implement pageListParse with multiple strategies (embedded JSON, pre-rendered images, single-page mode) and fix thumbnail/src handling.
darwin-256
reviewed
Apr 22, 2026
Contributor
darwin-256
left a comment
There was a problem hiding this comment.
Also Remove redundant .trim() after .text()
Jsoup .text() is already trimmed: Calling element.text().trim() is redundant
Contributor
|
Doesn't look like the site is even using Madara anymore, so it might be better to just make it an httpsource instead. |
Contributor
Author
|
I've made the changes based on your feedback @darwin-256 |
Contributor
Author
Contributor
|
it isn't really more work, you have already done most of the parsing work, just need to base on |
Replace Madara multisrc inheritance with ParsedHttpSource for the DoujinHentai extension.
Contributor
Author
|
I've migrated from Madara to ParsedHttpSource. @AaronDeimos @AwkwardPeak7 |
Contributor
If you read contributing.md you should have seen that parsedhttpsource is deprecated and you should use httpsource instead |
AaronDeimos
reviewed
Apr 24, 2026
Filters migrated to a new file `DoujinHentaiFilters.kt`
AaronDeimos
reviewed
Apr 24, 2026
AaronDeimos
reviewed
Apr 24, 2026
…nhentai/DoujinHentai.kt added: import eu.kanade.tachiyomi.util.asJsoup Co-authored-by: Aaron <168236779+AaronDeimos@users.noreply.github.com>
Replace the custom Response.asJsoup with the shared util.asJsoup and remove the unused Jsoup import. Make mangaFromElement nullable and return null when title is missing, then filter out nulls with mapNotNull in listings and chapter parsing. Adjust manga detail title extraction and other mappings to reduce thrown exceptions and skip invalid elements.
…ps://github.com/ONII404/extensions-source into fix/doujinhentai-search-filters-chapters(E-404)
Introduce a private Elements.texts() extension to DRY up extraction of non-blank element texts and use it for authors, artists and categories. Refactor tag extraction to trim leading '#' and filter blanks, and switch script parsing to use asSequence() to avoid allocating an intermediate list. Add the necessary import and move the helper to the file end for reuse and clearer code.
Increment extVersionCode from 49 to 50 in src/es/doujinhentai/build.gradle to update the app version code for DoujinHentai. No other behavior or metadata changes were made.
AwkwardPeak7
approved these changes
Apr 26, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Bump overrideVersionCode to 3 and overhaul the DoujinHentai extension to match updated site structure. Update selectors and endpoints (use lista-manga-hentai / lista-de-...), unify popular/latest handling, and implement robust search routing (text search + route-based filters for genre/artist/author/scanlator/letter/type and order). Rework manga details and chapter parsing (author/artist extraction, status, thumbnails, improved chapter naming and scanlator/date parsing using a lazy SimpleDateFormat). Add comprehensive filters (Genre, Type, Artist, Author, Scanlator) and expand genre list. Implement pageListParse with multiple strategies (embedded JSON, pre-rendered images, single-page mode) and fix thumbnail/src handling.
Closes #12238
Checklist:
extVersionCodevalue inbuild.gradlefor individual extensionsoverrideVersionCodeorbaseVersionCodeas needed for all multisrc extensionsisNsfw = trueflag inbuild.gradlewhen appropriateidif a source's name or language were changedweb_hi_res_512.pngwhen adding a new extension