[Skript,Linux,Mac,Windows] Archiv vollautomatisch herunterladen mit Event-Skripter

Top-Downloadmanager mit voller Save.TV Integration! (automatische Archivübernahme u.v.a.m.)
Antworten
Benutzeravatar
Fox   
Administrator
Beiträge: 1036
Registriert: Do 3. Mär 2016, 13:29
bevorzugter Onlinevideorecorder: (Eigenbau)
Kontaktdaten:

[Skript,Linux,Mac,Windows] Archiv vollautomatisch herunterladen mit Event-Skripter

Beitrag von Fox    »

In den JDownloader-Einstellungen muss zunächst die Erweiterung "Event-Skripter" installiert wird, dafür ist ein Neustart des JDownloaders erforderlich. Danach kann dieses in den Einstellungen aktiviert und genutzt werden.

2018-06-15_13h38_12.png
2018-06-15_13h38_12.png (114.78 KiB) 6321 mal betrachtet


[list=]
[*]Event-Skripter öffnen
[*]Ein neues Event-Skript hinzufügen
[*]Den Trigger "Intervall" wählen
[*]Bearbeiten: hier wird JavaScript-Code eingefügt, die API kann unter dem Popup-Menü-Reiter "Hifle anzeigen/verstecken" ausgewählt werden. Die MyJDownloader API-Doku ist unter https://my.jdownloader.org/developers/ zu finden (welche mit der Funktion callAPI aufgerufen wird).
[/list]

Automatisches hinzufügen des SaveTV Archivs & starten der Downloads. (Trigger: Intervall; Intervallzeit: 604800000 (Wöchentlich)

Code: Alles auswählen

//Füge hier Dein Skript hinzu. Du kannst die verfügbaren API-Eigenschaften und Methoden nutzen.
//Trigger: Intervall 604800000 (7 Tage)

callAPI("linkgrabberv2", "addLinks", {
    "deepDecrypt": false,
    "links": "https://www.save.tv/STV/M/obj/archive/VideoArchive.cfm?bLoadLast=true",
    "overwritePackagizerRules": false,
    "packageName": "SaveTV",
    "autostart": true
});


Ihr könnt den Parameter autostart auf false setzen, wodurch die Links nur zum Linksammler hinzugefügt werden. Die Weitere Steuerung kann zum Beispiel die JDownloader2 Erweiterung "Zeitplaner" übernehmen, sodass euer JDownloader vollautomatisch ausschließlich Nachts das SaveTV-Archive herunterlädt.

Event-Skripter-Demo: CRC32-Prüfsummen
Ich habe noch ein zweites Skript, welches die Möglichkeiten etwas weiter demonstrieren soll - dieses erstellt eine CRC32-Prüfsumme und speichert diese im Dateinamen ab.

Automatisches hinzufügen von CRC32-Informationen im Dateinamen (Trigger: Ein Download stoppt - benötigt Berechtigungen zum verschieben der Datei)

Code: Alles auswählen

// Simple history
// Trigger Required : A Download Stopped
// Regex #1 Group filename #2 Goup Extension
const regex = /^(.*)\.([\w]{2,4})/gm;

if (link.isFinished()) {
    // Requirements
    var file = link.getDownloadPath();
    var path = getPath(file);
    var filename = regex.exec(path.getName())[1];
    var extension = path.getExtension();
    var folder = link.package.getDownloadFolder();
    // Process
    var crc32 = parseInt(getChecksum("crc32", file)).toString(16).toUpperCase();
    var filenameCRC = folder + '/' + filename + ' [' + crc32 + '].' + extension;
    var pathCRC = getPath(filenameCRC);
    // Move Files
    if (pathCRC.exists()) pathCRC.delete();
    path.renameTo(pathCRC);
    writeFile(path, "", false);
    //Files.createSymbolicLink(pathCRC, path);
}
Erkennen - Verstehen - Nutzen
Es gibt immer schlechte Beispiele - aber sollte man nicht versuchen, besser zu sein?

Link:
BBcode:
HTML:
Hide post links
Show post links
Fredel
Beiträge: 927
Registriert: So 21. Feb 2016, 20:45
bevorzugter Onlinevideorecorder: Save.TV

[Skript,Linux,Mac,Windows] Archiv vollautomatisch herunterladen mit Event-Skripter

Beitrag von Fredel »

Bitte zu folgender Nachfrage keine Umstände machen (ich komme bereits jetzt extrem gut zurecht), aber da Du grad im "Code" drine bist:

Können mit den Events auch "Plug-In Crawler API Parameter" wie tags=record:manual, oder tvcategories=1 verwendet / eingebracht werden? Hintergrund: Jedes "hinzufügen" besteht bei mir aus mehr als 1 Durchlauf mit jeweils unterschiedlichen Parametern.
jDownloader & Save.TV: 1. Schritte - automatischer Download <--> Save.TV Manager Version 3 Update: Favoriten retten

Link:
BBcode:
HTML:
Hide post links
Show post links
Benutzeravatar
Fox   
Administrator
Beiträge: 1036
Registriert: Do 3. Mär 2016, 13:29
bevorzugter Onlinevideorecorder: (Eigenbau)
Kontaktdaten:

[Skript,Linux,Mac,Windows] Archiv vollautomatisch herunterladen mit Event-Skripter

Beitrag von Fox    »

JA!
Du kannst mit dem Skript die https://My.JDownloader.org API ansprechen, die sich hinter diesem Web-Remote-Steuerungs-Webseite verbirgt. Über diese ist es auch Möglich die Plug-in-Einstellungen zu editieren, wodurch du deine gewünschten Tags ändern kannst. Allerdings müsstest du dich dafür in die API einlesen und mehrere API-Anfragen hintereinander ausführen. (Plug-in Einstellungen von SaveTV abfragen, gewünschte Einstellungen finden, Änderung an API absenden, dann ganz normal URL crawlen. Dann die Einstellung wieder ändern, und wieder crawlen lassen)....
Du würdest dabei eine Abfragen nach der anderen über die JavaScript-Funktion "callAPI" durchführen. Das schwierigste dürfte dabei nicht etwa das EventSkript oder die Abfrage selbst sein, sondern das finden der passenden API-Methode und der passenden SaveTV-Plug-in-Einstellungen. (Also das einarbeiten in die Materie ^^).
Erkennen - Verstehen - Nutzen
Es gibt immer schlechte Beispiele - aber sollte man nicht versuchen, besser zu sein?

Link:
BBcode:
HTML:
Hide post links
Show post links
Benutzeravatar
Fox   
Administrator
Beiträge: 1036
Registriert: Do 3. Mär 2016, 13:29
bevorzugter Onlinevideorecorder: (Eigenbau)
Kontaktdaten:

[Skript,Linux,Mac,Windows] Archiv vollautomatisch herunterladen mit Event-Skripter

Beitrag von Fox    »

Bei mir läuft der JDownloader auf dem NAS-Server und Dank EventSkript wird er in Zukunft auch automatisch und autonom alle 7 Tage das SaveTV-Archiv herunterladen. Ich kann genüsslich zusehen, wie mein Archive sich automatisch füllt (und selbstständig sortiert, in Unterordnern unterteilt etc.) und muss nur noch programmieren (was ich mit dem STV Manager mache). ~Nja, wenn SaveTV wieder kurioses im EPG einstellt, darf ich doch wieder nacharbeiten, aber es läuft großteils sehr glatt.
Erkennen - Verstehen - Nutzen
Es gibt immer schlechte Beispiele - aber sollte man nicht versuchen, besser zu sein?

Link:
BBcode:
HTML:
Hide post links
Show post links
Antworten