feat: 调整别名的转义

This commit is contained in:
wanxp 2025-11-09 23:16:34 +08:00
parent 08749116f3
commit ffc93a4a13
6 changed files with 48 additions and 13190 deletions

13171
package-lock.json generated

File diff suppressed because it is too large Load Diff

@ -49,8 +49,18 @@ export default class DoubanTheaterAiLoadHandler extends DoubanAbstractLoadHandle
extract.author, extract.author,
extract.author.map(SchemaOrg.getPersonName).map(name => super.getPersonName(name, context)).filter(c => c) extract.author.map(SchemaOrg.getPersonName).map(name => super.getPersonName(name, context)).filter(c => c)
)); ));
super.parseAliases(beforeContent, variableMap, extract, context); variableMap.set("aliases", new DataField("aliases", DataValueType.array, extract.aliases,
} extract.aliases.map(a=>a
.trim()
// .replace(TITLE_ALIASES_SPECIAL_CHAR_REG_G, '_')
// //replase multiple _ to single _
// .replace(/_+/g, '_')
// .replace(/^_/, '')
// .replace(/_$/, '')
.replace(/:\s+/g, ':')
)));
// super.parseAliases(beforeContent, variableMap, extract, context);
}
support(extract: DoubanSubject): boolean { support(extract: DoubanSubject): boolean {
return extract && extract.type && (extract.type.contains("舞台剧") || extract.type.contains("舞剧") || extract.type.contains("Theater") || extract.type.contains("theater")); return extract && extract.type && (extract.type.contains("舞台剧") || extract.type.contains("舞剧") || extract.type.contains("Theater") || extract.type.contains("theater"));

@ -111,19 +111,7 @@ export default abstract class DoubanAbstractLoadHandler<T extends DoubanSubject>
abstract getSupportType(): SupportType; abstract getSupportType(): SupportType;
parseVariable(beforeContent: string, variableMap:Map<string, DataField>, extract: T, context: HandleContext): void; abstract parseVariable(beforeContent: string, variableMap:Map<string, DataField>, extract: T, context: HandleContext): void;
parseAliases(beforeContent: string, variableMap:Map<string, DataField>, extract: T, context: HandleContext): string[] {
// variableMap.set("aliases", new DataField("aliases", DataValueType.array, extract.aliases,
// extract.aliases.map(a=>a
// .trim()
// .replace(TITLE_ALIASES_SPECIAL_CHAR_REG_G, '_')
// //replase multiple _ to single _
// .replace(/_+/g, '_')
// .replace(/^_/, '')
// .replace(/_$/, '')
// )));
}
abstract support(extract: DoubanSubject): boolean; abstract support(extract: DoubanSubject): boolean;

@ -29,7 +29,18 @@ export default class DoubanGameLoadHandler extends DoubanAbstractLoadHandler<Dou
} }
parseVariable(beforeContent: string, variableMap:Map<string, DataField>, extract: DoubanGameSubject, context: HandleContext): void { parseVariable(beforeContent: string, variableMap:Map<string, DataField>, extract: DoubanGameSubject, context: HandleContext): void {
super.parseAliases(beforeContent, variableMap, extract, context); // super.parseAliases(beforeContent, variableMap, extract, context);
variableMap.set("aliases", new DataField("aliases", DataValueType.array, extract.aliases,
extract.aliases.map(a=>a
.trim()
// .replace(TITLE_ALIASES_SPECIAL_CHAR_REG_G, '_')
// //replase multiple _ to single _
// .replace(/_+/g, '_')
// .replace(/^_/, '')
// .replace(/_$/, '')
.replace(/:\s+/g, ':')
)));
// super.parseAliases(beforeContent, variableMap, extract, context);
} }
support(extract: DoubanSubject): boolean { support(extract: DoubanSubject): boolean {

@ -51,8 +51,18 @@ export default class DoubanMovieLoadHandler extends DoubanAbstractLoadHandler<Do
extract.author, extract.author,
extract.author.map(SchemaOrg.getPersonName).map(name => super.getPersonName(name, context)).filter(c => c) extract.author.map(SchemaOrg.getPersonName).map(name => super.getPersonName(name, context)).filter(c => c)
)); ));
super.parseAliases(beforeContent, variableMap, extract, context); variableMap.set("aliases", new DataField("aliases", DataValueType.array, extract.aliases,
} extract.aliases.map(a=>a
.trim()
// .replace(TITLE_ALIASES_SPECIAL_CHAR_REG_G, '_')
// //replase multiple _ to single _
// .replace(/_+/g, '_')
// .replace(/^_/, '')
// .replace(/_$/, '')
.replace(/:\s+/g, ':')
)));
// super.parseAliases(beforeContent, variableMap, extract, context);
}
support(extract: DoubanSubject): boolean { support(extract: DoubanSubject): boolean {
return extract && extract.type && (extract.type.contains("电影") || extract.type.contains("Movie") || extract.type.contains("movie")); return extract && extract.type && (extract.type.contains("电影") || extract.type.contains("Movie") || extract.type.contains("movie"));

@ -39,7 +39,17 @@ export class DoubanTeleplayLoadHandler extends DoubanAbstractLoadHandler<DoubanT
extract.author, extract.author,
extract.author.map(SchemaOrg.getPersonName).map(name => super.getPersonName(name, context)).filter(c => c) extract.author.map(SchemaOrg.getPersonName).map(name => super.getPersonName(name, context)).filter(c => c)
)); ));
super.parseAliases(beforeContent, variableMap, extract, context); variableMap.set("aliases", new DataField("aliases", DataValueType.array, extract.aliases,
extract.aliases.map(a=>a
.trim()
// .replace(TITLE_ALIASES_SPECIAL_CHAR_REG_G, '_')
// //replase multiple _ to single _
// .replace(/_+/g, '_')
// .replace(/^_/, '')
// .replace(/_$/, '')
.replace(/:\s+/g, ':')
)));
// super.parseAliases(beforeContent, variableMap, extract, context);
} }
support(extract: DoubanSubject): boolean { support(extract: DoubanSubject): boolean {