Updated
This commit is contained in:
parent
d1fb815d4d
commit
cf35aa6ea7
@ -69,7 +69,7 @@ class UseSource():
|
|||||||
titles.append(wd.result.data.title)
|
titles.append(wd.result.data.title)
|
||||||
titles.extend(wd.result.data.altTitle)
|
titles.extend(wd.result.data.altTitle)
|
||||||
joinedTitles = "\n\t".join(titles)
|
joinedTitles = "\n\t".join(titles)
|
||||||
logger.info(f"Title {self.title} gave the result: {joinedTitles} \nWith used: {scored[0].result.data.title}\n")
|
logger.info(f"Title {self.title} gave the result: {joinedTitles} \nTitle selected: \n\t{scored[0].result.data.title}\n")
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|||||||
@ -10,7 +10,7 @@ class FileNameParser(val fileName: String) {
|
|||||||
cleanedFileName = removeResolutionAndTrailing(cleanedFileName)
|
cleanedFileName = removeResolutionAndTrailing(cleanedFileName)
|
||||||
cleanedFileName = removeResolutionAndTags(cleanedFileName)
|
cleanedFileName = removeResolutionAndTags(cleanedFileName)
|
||||||
cleanedFileName = removeParenthesizedText(cleanedFileName)
|
cleanedFileName = removeParenthesizedText(cleanedFileName)
|
||||||
cleanedFileName = removeYearAndTrailing(cleanedFileName)
|
cleanedFileName = removeYear(cleanedFileName)
|
||||||
cleanedFileName = removeDot(cleanedFileName)
|
cleanedFileName = removeDot(cleanedFileName)
|
||||||
cleanedFileName = removeExtraWhiteSpace(cleanedFileName)
|
cleanedFileName = removeExtraWhiteSpace(cleanedFileName)
|
||||||
cleanedFileName = removeTrailingAndLeadingCharacters(cleanedFileName).trim()
|
cleanedFileName = removeTrailingAndLeadingCharacters(cleanedFileName).trim()
|
||||||
@ -44,14 +44,14 @@ class FileNameParser(val fileName: String) {
|
|||||||
|
|
||||||
fun guessDesiredTitle(): String {
|
fun guessDesiredTitle(): String {
|
||||||
val desiredFileName = guessDesiredFileName()
|
val desiredFileName = guessDesiredFileName()
|
||||||
if (Regexes.season.containsMatchIn(desiredFileName)) {
|
return if (Regexes.season.containsMatchIn(desiredFileName)) {
|
||||||
return Regexes.season.split(desiredFileName).firstOrNull()?.trim() ?: desiredFileName
|
Regexes.season.split(desiredFileName).firstOrNull()?.trim() ?: desiredFileName
|
||||||
} else {
|
} else {
|
||||||
val result = if (desiredFileName.contains(" - ")) {
|
val result = if (desiredFileName.contains(" - ")) {
|
||||||
return desiredFileName.split(" - ").firstOrNull() ?: desiredFileName
|
desiredFileName.split(" - ").firstOrNull() ?: desiredFileName
|
||||||
} else desiredFileName
|
} else desiredFileName
|
||||||
return result.trim()
|
result.trim()
|
||||||
}
|
}.trim('.', '-')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -86,16 +86,19 @@ class FileNameParser(val fileName: String) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
fun removeYearAndTrailing(text: String): String {
|
fun removeYear(text: String): String {
|
||||||
val match = Regex("\\b\\d{4}\\W").find(text, 0)?.value
|
val match = Regex("\\b\\d{4}\\W").find(text, 0)?.value
|
||||||
if (match == null || text.indexOf(match) > 0) {
|
if (match == null || text.indexOf(match) > 0) {
|
||||||
return Regex("\\b\\d{4}\\b(.*)").replace(text, " ")
|
//return Regex("\\b\\d{4}\\b(.*)").replace(text, " ")
|
||||||
|
return Regex("\\b\\d{4}\\b").replace(text, "")
|
||||||
}
|
}
|
||||||
return text
|
return text
|
||||||
}
|
}
|
||||||
|
|
||||||
fun removeDot(text: String): String {
|
fun removeDot(input: String): String {
|
||||||
return Regex("\\.(?<!(Dr|Mr|Ms|Mrs|Lt|Capt|Prof|St|Ave)\\.)\\b").replace(text, " ")
|
//var text = Regex("(?<=\\s)\\.|\\.(?=\\s)").replace(input, "")
|
||||||
|
//return Regex("\\.(?<!(Dr|Mr|Ms|Mrs|Lt|Capt|Prof|St|Ave)\\.)\\b").replace(text, " ")
|
||||||
|
return Regex("(?<!\\b(?:Dr|Mr|Ms|Mrs|Lt|Capt|Prof|St|Ave))\\.+(?=\\s|\\w)").replace(input, " ")
|
||||||
}
|
}
|
||||||
|
|
||||||
fun removeInBetweenCharacters(text: String): String {
|
fun removeInBetweenCharacters(text: String): String {
|
||||||
|
|||||||
@ -23,6 +23,17 @@ class FileNameParserTest {
|
|||||||
assertThat(parser.guessDesiredFileName()).isEqualTo("Fancy Name Test 99 - 01")
|
assertThat(parser.guessDesiredFileName()).isEqualTo("Fancy Name Test 99 - 01")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun serieName() {
|
||||||
|
val inName = "Nihon.2024.S01E01.Gaijin.1080p.YT.HEVC"
|
||||||
|
val parser = FileNameParser(inName)
|
||||||
|
|
||||||
|
val title = parser.guessDesiredTitle()
|
||||||
|
val result = parser.guessDesiredFileName()
|
||||||
|
|
||||||
|
assertThat(title).isEqualTo("Nihon")
|
||||||
|
assertThat(result).isEqualTo("Nihon S01E01 Gaijin")
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue
Block a user