fix(indexers): GGn regex pattern (#516)

* Fixed regex to still match the announce if there are no flags in it.

* customize freeleech parsing from regex

* Fix match when there is no year given (instead of 0) for a release.
	Made capture group 4 lazy/optional/ungreedy.

Created a non-capturing group for the `:: NSFW! ::` section to exclude the seperators and the tag itself from the tags var.
	I think we should exclude a possible `:: NSFW! ::` section after the tags section from matching for 2 reasons:
	1. There is already an "adult" tag. Use it.
	2. The `:: NSFW! ::` may get truncated if the announce line is too long. Matching the tag against `adult` is more consistent.

Fix match when `:: NSFW! ::` section gets truncated because the announce line is too long.

Tested with a sample size of 554 announces of which 554 resulted in a match.

* fix(indexers): ggn change flags to releaseTags and freeleech
This commit is contained in:
xoaaC 2022-11-10 10:35:59 +01:00 committed by GitHub
parent 490d85d220
commit f811b80413
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -85,14 +85,14 @@ parse:
- test: - test:
- "Uploader :-: Nintendo 3DS :-: Cool.Game.KOR.3DS-BigBlueBox in Cool Game [2013] ::Korean, Multi-Region, Scene:: https://gazellegames.net/torrents.php?torrentid=00000 - adventure, role_playing_game, nintendo;" - "Uploader :-: Nintendo 3DS :-: Cool.Game.KOR.3DS-BigBlueBox in Cool Game [2013] ::Korean, Multi-Region, Scene:: https://gazellegames.net/torrents.php?torrentid=00000 - adventure, role_playing_game, nintendo;"
- "Uploader :-: Windows :-: Other.Game-HI2U in Other Game [2016] ::English, Scene:: FREELEECH! :: https://gazellegames.net/torrents.php?torrentid=00000 - action, adventure, casual, indie, role.playing.game;" - "Uploader :-: Windows :-: Other.Game-HI2U in Other Game [2016] ::English, Scene:: FREELEECH! :: https://gazellegames.net/torrents.php?torrentid=00000 - action, adventure, casual, indie, role.playing.game;"
pattern: '^(.+) :-: (.+) :-: (.+) \[(\d+)\] ::(.+?):: ?(.+? ::)? (https?:\/\/[^\/]+\/)torrents.php\?torrentid=(\d+) ?-? ?(.*?)?;?$' pattern: '^(.+) :-: (.+) :-: (.+) \[(\d+)?\] ::(.+?)?:: ?(.+?)?(?:! ::)? (https?:\/\/[^\/]+\/)torrents.php\?torrentid=(\d+)(?: - )?([a-zA-Z0-9, _\.]+)?;?(?:[ :]*(?:[NSFW]*)?[! :]*)?$'
vars: vars:
- uploader - uploader
- category - category
- torrentName - torrentName
- year - year
- flags - releaseTags
- bonus - freeleech
- baseUrl - baseUrl
- torrentId - torrentId
- tags - tags