Extend mediainfo parsing under menu
This commit is contained in:
parent
3e4273d5c2
commit
e74cbdb95a
|
@ -1,7 +1,7 @@
|
|||
// ==UserScript==
|
||||
// @name AnimeBytes Mediainfo Improvements
|
||||
// @author WeebDataHoarder
|
||||
// @version 1.29.5
|
||||
// @version 1.29.6
|
||||
// @downloadURL https://git.gammaspectra.live/WeebDataHoarder/userscripts/raw/branch/master/AnimeBytes/ab-mediainfo.user.js
|
||||
// @updateURL https://git.gammaspectra.live/WeebDataHoarder/userscripts/raw/branch/master/AnimeBytes/ab-mediainfo.user.js
|
||||
// @description AnimeBytes Mediainfo Improvements. Adds several listing and matching releases against mediainfo utilities. MIT license
|
||||
|
@ -17,7 +17,7 @@
|
|||
// @require deps/compat.js?1
|
||||
// @require deps/resources.js?2
|
||||
// @require deps/settings.js?1
|
||||
// @require deps/mediainfo.js?14
|
||||
// @require deps/mediainfo.js?15
|
||||
// @require deps/ab-class.js?1
|
||||
// @run-at document-end
|
||||
// ==/UserScript==
|
||||
|
@ -1699,7 +1699,12 @@ if(
|
|||
}else if(descriptionSection !== null){
|
||||
//Find mediainfo tags
|
||||
torrent.elements.description.querySelectorAll("input.spoilerButton").forEach((e) => {
|
||||
let t = e.parentElement.querySelector("div.spoiler").textContent.trim();
|
||||
let ee = e.parentElement.querySelector("div.spoiler");
|
||||
let tt = ee.querySelector("pre");
|
||||
if(!tt){
|
||||
tt = ee;
|
||||
}
|
||||
let t = tt.textContent.trim()
|
||||
let index = t.indexOf("General");
|
||||
if(index !== -1){
|
||||
let m = Mediainfo.parseText(t.substr(index));
|
||||
|
|
|
@ -979,7 +979,13 @@ class Mediainfo {
|
|||
ob[currentKey] = currentOb;
|
||||
}
|
||||
}else if(currentOb !== null){
|
||||
const matches = currentKey === "menu" ? cleanLine.match(/^(?<key>([0-9]+:)+[0-9]+(\.[0-9]+)?)[\s]*:(?<value>.+)$/) : cleanLine.match(/^(?<key>((?!\s?:).)+)[\s]*:(?<value>.+)$/);
|
||||
let matches = null;
|
||||
if(currentKey === "menu"){
|
||||
matches = cleanLine.match(/^(?<key>([0-9]+:)+[0-9]+(\.[0-9]+)?)[\s]*:(?<value>.+)$/);
|
||||
}
|
||||
if(matches === null){
|
||||
matches = cleanLine.match(/^(?<key>((?!\s?:).)+)[\s]*:(?<value>.+)$/);
|
||||
}
|
||||
if(matches !== null){
|
||||
let key = matches.groups.key.trim().toLowerCase().replace(/[ \/*]/g, "_").replace(/[(),]/g, "");
|
||||
currentOb[key] = matches.groups.value.trim();
|
||||
|
|
Loading…
Reference in a new issue