#1881
|
|||
|
|||
Danke für die Konkretisierung
Ich möchte eine Textdatei (.txt) mit folgendem Inhalt (so ähnlich wie das JDownloader bei youtube bereits macht): 1. Zeile der Link: https :// auf1. tv/aufrecht-auf1/ernst-wolff-im-interview-welche-minderheit-uns-lenkt-und-was-sie-will/ bzw.: https :// auf1. eu/videos/watch/413e81fe-10c8-45f5-b2fd-5bdd274da888?title=0&warningTitle=0&peertubeLink=0 Die nächsten Zeilen: Der Text aus der Video-Beschreibung. @ mgpai: Danke, falls du irgendwann Zeit findest |
#1882
|
|||
|
|||
So jetzt müsste alles wichtige drin stehen
Die letzten Posts, einschl. diesem: 5, kannst du gerne wieder löschen, wenn du möchtest; der Übersichtlichkeit halber Last edited by mirino; 29.09.2021 at 16:17. |
#1883
|
|||
|
|||
If you are able create a script, why not give it a try? It does not take that much time really. Post the script here if it does not work.
|
#1884
|
|||
|
|||
Thanks:
To make scripts is not difficult for me. To find time is very difficult for me. I hope i find time, thats not easy for me at this time and weeks. I will start to read this thread from beginning, if i find time there for. I will try my frist try-script. If it comes very late, i would be happy, you can give me a first script, that i can try, if it works Last edited by mirino; 29.09.2021 at 16:42. |
#1885
|
||||
|
||||
@mirino
Deine Antwort scheint sich für mgpai eher so zu lesen als hättest du wirklich einfach keine Zeit/Lust, ein Script selbst zu schreiben. Falls du dich unglücklich ausgedrückt hattest und eher sagen wolltest, dass du dir das mangels js Kenntnissen nicht zutraust solltest du ihn das ggf. wissen lassen ansonsten wartet er wohl auf deinen ersten Versuch, selbst eines zu erstellen Grüße, psp
__________________
JD Supporter, Plugin Dev. & Community Manager
Erste Schritte & Tutorials || JDownloader 2 Setup Download |
#1886
|
|||
|
|||
danke Ich editiere …
|
#1887
|
|||
|
|||
@mgpai: Here is my first try, more the idea, not a working script. Can you help me, to make it work?
Code:
// Write a .txt-file with Download-Link, fileName and the Video-Description. // Trigger: "A Download Started" if (link.isStarted () && link.isVideo ()) { var fileName = link.getName () var fileFolder = link.package.getDownloadFolder () + "/" ? var fileFolderName = fileFolder + fileName + "\.txt" var downloadLinkAsString = link.name var text = downloadLinkAsString + "\n" text = text + fileName + "\n\n" text = text + link.getComment () if (getPath (fileFolderName).exists ()) getPath (fileFolderName).rename (fileFolderName + ".bak") writeFile (fileFolderName, text, true) } 1. Contains link.package.getDownloadFolder () a "/" at the end? --> Answer: No 2. Is link.getComment () the Description on the HTML-Page of the Video? --> Answer: Returns the contents of the 'comment' field of link property, which is either set automatically by the plugin, or manually by the user. 3. Is "if (link.isStarted ()" sufficient to enable the triger "a download is started for each link that is downloaded"? --> Answer: Better to use 'stopped' trigger and run script only after link is 'finished'. 4. How can i strip of the ending (e.g. .mp4) of fileName or can we get a function getNameWithoutEnding ()? --> Answer: Check example in my script. 5. Has the Event-Scripter the functions: isVideo (), isAudio (), isPicture () and isBook () or can we get it for using in Event-Scripter? --> Answer: Can use 'myDownloadLink.getLinkInfo()' method. Last edited by mirino; 30.09.2021 at 09:43. |
#1888
|
|||
|
|||
Quote:
Notes on your script:
Code:
/* Write link info to file Trigger: A download stopped */ if (link.finished && link.host == "joinpeertube.org") { var ext = getPath(link.downloadPath).extension; var file = link.downloadPath.replace(ext, "txt"); var data = [link.contentURL, link.name + "\n", link.comment].join("\n"); try { writeFile(file, data, true); } catch (e) {}; } Note: I use dot notations (undocumented) wherever possible, to access the properties instead of the documented object methods. |
#1889
|
|||
|
|||
Thanks for your script. I test it and it works
But the text under the Button "Mehr anzeigen v" is missed. Can this be implemented to get with "link.comment"? I have edit your answers into my last post for the reason of easy reading. My new questions: 5. Is "link.host == "joinpeertube.org"" equal "link.getLinkInfo() == "joinpeertube.org""? 6. Does this "writeFile (file, data, true)" append Data to file or how can i append Data? 7. "To access the download url, you have to query contentURL and use pluginURL as fallback if necessary." "to query contentURL" is "link.contentURL". What do you mean with "use pluginURL" and ist this in your script example? 8. Thanks for this and question: i'm right with the following examples?: dot notations (undocumented), to access the properties, e.g. link.finished; link.name; link.comment; instead of the documented object methods, e.g. link.isFinished (); link.getName (); link.getComment (); Did you have more examples? I think a list could be usefull for me and other users Last edited by mirino; 30.09.2021 at 10:08. |
#1890
|
|||
|
|||
5. No. link.host or link.getHost(), returns the plugin host. link.getLinkInfo() returns for e.g., the following:
Code:
{ "group" : "VideoExtensions", "desc" : "Video File", "partNum" : -1 } Since the host is a video host, the script just queries the 'host name', instead of 'file type'. 6. 'true' = append, 'false' = do not append (this will not overwrite the file, but throw an error if a file with same name exists on disk). 7. The contentURL method for this host always returns the download url so fallback option is not required. For some hosts where the contentURL is protected (e.g. filecrypt), you can use pluginURL as fall back. For e.g.: Code:
var downloadUrl = link.contentURL || link.pluginURL; 8. Correct. Happy scripting. |
#1891
|
|||
|
|||
This one is for @psp.
|
#1892
|
|||
|
|||
@psp: Can you solve it?
@mgpai: see my post down Last edited by mirino; 30.09.2021 at 14:24. |
#1893
|
||||
|
||||
@mirino
1. Fixed truncated description for auf1.tv. Wait for the next update. You will have to remove- and re-add all affected URLs in order to get the full description as comment. 2. URLs are hidden for all non-moderators so mgpai cannot see your URLs. You have to remove the "http" so he can see them or even better: Send them to him via PN. ... but he won't be able to do anything about it because if 3: 3. Seems like either the vimeo video itself does not provide any description or we're not yet srtting that. I'll check this in a moment... -psp-
__________________
JD Supporter, Plugin Dev. & Community Manager
Erste Schritte & Tutorials || JDownloader 2 Setup Download |
#1894
|
||||
|
||||
@mirino
Unser Vimeo Plugin setzt die Videobeschreibungen grundsätzlich. Es handelt sich hier also nicht um einen Fehler! In diesem Fall ist jedoch auf vimeo selbst keine Beschreibung gegeben und unser Plugin kann natürlich nicht einfach erraten, dass es im Kontext/Referer irgendeine Webseite (in diesem Fall "wahrheitskongress.de/bla...") besuchen- und dort irgendeine Information herausziehen soll. Mit etwas mehr Arbeit könnte man das ebenfalls per EventScripter Script lösen oder eben ein eigenständiges Plugin basteln, das die Beschreibung herauszieht und auf die Vimeo Links setzt. Letzteres wird es von unserer Seite aus nicht geben, da es mehr Workaround als Feature ist daher bitte selbst ein entsprechendes Script oder Plugin schreiben... oder dem Uploader dieser Vimeo Inhalte bescheid geben, er möge doch bitte die Beschreibung mit auf Vimeo packen Grüße, psp
__________________
JD Supporter, Plugin Dev. & Community Manager
Erste Schritte & Tutorials || JDownloader 2 Setup Download |
#1895
|
|||
|
|||
deleted, because down new
Last edited by mirino; 30.09.2021 at 14:36. |
#1896
|
|||
|
|||
Das passt schon. Vielleicht versuche ich mich mal später an einem Event-Scripter-Script dafür (sehr viel später wahrscheinlich). Ich brauche allerdings die .txt-Datei mit den ersten beiden Zeilen, also ohne Video-Description. Ich freue mich sehr, dass mgpai mich so schnell und kompetent unterstützt.
Viele Grüße zurück, Mirino Last edited by mirino; 30.09.2021 at 14:19. |
#1897
|
|||
|
|||
Vielen Dank für das schnelle Bearbeiten. Es funktioniert Allerdings steht vor jedem Absatz, außer dem ersten Absatz, ein Leerzeichen, z.B. " Achtung, dieses Video …"
|
#1898
|
|||
|
|||
@mgpai: I am very happy that you support me so quickly and competently.
I have tested this link (*): player.vimeo .com/video/605104717?h=a3aecf410c with password (without 3 Blanks): https ://www .wahrheitskongress .de/ On the vimeo-site there is no description, hence exists no link.description. 9. The script does'nt create a textfile. How can we fix it? I assume link.host != "joinpeertube.org". How must we code?: Code:
if (link.finished && (link.host == "joinpeertube.org" || link.host == "???")) { 10. It comes, per Copy & Clipboard, from this site: www .wahrheitskongress .de/2021-tag-1-1-interview-mit-die-weisse-bueffelkalbfrau/ 11. Is there any solution to get the link (*) from 10.? 12. Is there any solution to get the description from 10.? Last edited by mirino; 30.09.2021 at 14:38. |
#1899
|
||||
|
||||
Quote:
Quote:
Jiaz wird sich das anschauen. In den Rohdaten ist der Text definitiv korrekt. Grüße, psp
__________________
JD Supporter, Plugin Dev. & Community Manager
Erste Schritte & Tutorials || JDownloader 2 Setup Download |
#1900
|
||||
|
||||
Quote:
-psp-
__________________
JD Supporter, Plugin Dev. & Community Manager
Erste Schritte & Tutorials || JDownloader 2 Setup Download |
#1901
|
|||
|
|||
Quote:
Code:
link.host == "joinpeertube.org" Code:
link.linkInfo.group == "VideoExtensions" |
#1902
|
|||
|
|||
Quote:
Last edited by mirino; 30.09.2021 at 16:16. |
#1903
|
|||
|
|||
Yes it works. Thank you very much
Ich brauche bei dem Link (*), siehe Post https://board.jdownloader.org/showpo...postcount=1898, eine andere Abfrage. Ich habe link.linkInfo.group == "VideoExtensions" ausprobiert. Damit funktioniert es: Es wird die .txt-Datei in jedem Video-Fall geschrieben, auch ohne dass eine Video-Description existiert und für andere Videos, als nur für "joinpeertube.org". Hier ist meine aktuelle Version: Code:
// Write downloadLink, fileName and the videoDescriptionInfo to file. // Trigger: A download stopped if (link.finished && link.linkInfo.group == "VideoExtensions") { // query filetype instead of hostname (link.host == "joinpeertube.org") var ext = getPath (link.downloadPath).extension; var file = link.downloadPath.replace (ext, "txt"); var data = [link.contentURL, link.name + "\n", link.comment].join("\n") + "\n"; try { writeFile (file, data, true); // 'true' = append, // 'false' = do not append (this will not overwrite the file, // but throw an error if a file with same name exists on disk). } catch (e) {}; } Last edited by mirino; 30.09.2021 at 16:34. |
#1904
|
||||
|
||||
@mirino: Du hast im Skript ja den link.host Prüfung wieder entfernt, dein Skript greift auf alle fertigen Videos, wie es die if Bedingung auch besagt.
__________________
JD-Dev & Server-Admin |
#1905
|
|||
|
|||
For the other part 10., 11. and 12. of https://board.jdownloader.org/showpo...postcount=1898 i have an idea with the program
Code:
wget Per Copy & Clipboard, from the content of this site: www .wahrheitskongress .de/2021-tag-1-1-interview-mit-die-weisse-bueffelkalbfrau/ i became the video-link (*): player.vimeo .com/video/605104717?h=a3aecf410c JDL takes this link (*) with password (without 3 Blanks): https ://www .wahrheitskongress .de/ Last edited by mirino; 30.09.2021 at 16:50. |
#1906
|
|||
|
|||
Ich habe "link.linkInfo.group == "VideoExtensions"" genommen, weil "link.host == "joinpeertube.org"" nicht für alle Videos funktioniert. Was meinst du genau, was ich falsch gemacht oder anders machen sollte?
|
#1907
|
||||
|
||||
Folgendes ist (grob) zu tun, um zu den Vimeo Links die Beschreibung der "wahrheitskongress.de" Webseite zu bekommen:
1. Sichergehen, dass JD entweder den korrekten Referer bereits kennt: "wahrheitskongress.de" Links über den deepcrawler einfügen, sodass die vimeo.com Links automatisch ohne Passwort- bzw. Referer-Abfrage übernommen werden). Ich will damit u.a. sagen: Wenn du nach dem "Passwort" gefragt wirst, gib nicht nur die Hauptseite von "wahrheitskongress.de" ein sondern den kompletten Link in dem der vimeo.com Link eingebettet ist -> Diesen brauchst du ja später, um daraus den Text zu ziehen. 2. Im Script den Referer Holen. Im EventScripter Script den Referer aus dem vimeo Downloadlink (PluginPatternMatcher) holen und in einen Link umwandeln: #forced_referer=<HierStehtDerLinkAlsHexwert> 3. Den Link aufrufen, Text über reguläre Ausdrücke aus dem HTML Code holen und entweder direkt speichern oder auf die vimeo.com URLs als Kommentar setzen. Grüße, psp
__________________
JD Supporter, Plugin Dev. & Community Manager
Erste Schritte & Tutorials || JDownloader 2 Setup Download |
#1908
|
||||
|
||||
@mirino
Quote:
Quote:
Du kannst ebenfalls auch im Skript Webseite aufrufen und parsen, brauchst also kein externes wget hierfür nutzen
__________________
JD-Dev & Server-Admin |
#1909
|
|||
|
|||
You can create a linkcrawler rule to crawl that page and find the links. You can also specify password pattern in the same rule.
Whiile you can use the eventscripter 'browser' methods to fetch/query the html for an url and extract information for it, it is more suited for simple/lightweight tasks. If you download from the site quite often, I would recommend creating a plugin instead, since you can perform both those tasks in it. |
#1910
|
||||
|
||||
@mgpai
He only wants the text from that one website so I guess yeah, creating a LinkCrawler Rule is a first step to make things easier. @mirino Hier ist eine LinkCrawler Regel für "wahrheitskongress.de". Die sorgt dafür, dass JD diese Links automatisch erkennt und darin nach den vimeo Links sucht. So musst du auch nie wieder Passwort/Referrer für diese Links angeben: Code:
[ { "enabled": true, "logging": false, "maxDecryptDepth": 1, "name": "wahrheitskongress.de: find all embedded vimeo URLs", "pattern": "https?://(www\\.)?wahrheitskongress\\.de/[a-z0-9\\-]+/", "rule": "DEEPDECRYPT", "packageNamePattern": null, "passwordPattern": null, "deepPattern": "(https?://player\\.vimeo\\.com/video/[^\"]+)" } ] pastebin.com/raw/Y85RMRvF Jetzt must du wie HIER beschrieben bei Schritt 2 fortfahren und den "wahrheitskongress" Link im Script holen und den Text aus dem html Code extrahieren. Grüße, psp
__________________
JD Supporter, Plugin Dev. & Community Manager
Erste Schritte & Tutorials || JDownloader 2 Setup Download |
#1911
|
||||
|
||||
Quote:
Jiaz und ich haben uns das angeschaut. Es passiert, wenn man in Linksammer/Downloadliste die Dateieigenschaften aktiviert hat die erscheinen, wenn man auf einen Link klickt. Der Wert wird dann ebenfalls falsch (also mit den Leerzeichen) gespeichert. Was du vorerst tun kannst, um dem Problem aus dem Weg zu gehen:
Jiaz schaut sich das nochmal an und wird diesen Fehler ggf. fixen. Grüße, psp
__________________
JD Supporter, Plugin Dev. & Community Manager
Erste Schritte & Tutorials || JDownloader 2 Setup Download Last edited by pspzockerscene; 30.09.2021 at 18:58. |
#1912
|
|||
|
|||
Dear @mgpai,
Could you please help with a script that automatically deletes files have been downloaded for more than 30 days (and bigger than 5GB if possible to add this filter) when HDD space reached 900GB (or 90% HDD used). I have been using scheduled task on windows to delete the 30-days old files as per this instruction Quote:
Last edited by TomNguyen; 03.10.2021 at 07:56. |
#1913
|
|||
|
|||
Quote:
Code:
/* Disk cleanup Trigger: Interval Recommended interval: 3600000 (1 hour) or more */ var targetSpace = 100; var targetSize = 5; var targetDays = 30; getAllDownloadLinks().forEach(function(link) { var file = getPath(link.downloadPath); if ( file.freeDiskSpace < targetSpace * 1.0E9 && file.size > targetSize * 1.0E9 && Date.now() - file.createdDate > targetDays * 8.64E7 ) { link.skipped = true; } }) Since the action cannot be undone, I would recommend moving the files to a folder of your choice, instead of deleting them directly. Alternatively, if you also delete the corresponding links from the list when you delete the files, the API has an option to move the files to 'recycle' bin if possible. The script is currently set to only 'skip' the files. Click 'Test Run' to test the script and verify if the files 'skipped' match your selection criteria and find me in JD Chat: Code:
kiwiirc.com/nextclient/irc.libera.chat/#jdownloader |
#1914
|
|||
|
|||
Brilliant coder. Thanks a lot, mgpai!
|
#1915
|
||||
|
||||
@mgpai
Since we did never add ther abolity to upload scripts or add a nice overview, I'm curious: Do you have a current overview of your scripts somewhere e.g. GitHub? -psp-
__________________
JD Supporter, Plugin Dev. & Community Manager
Erste Schritte & Tutorials || JDownloader 2 Setup Download |
#1916
|
|||
|
|||
@psp: A few can be found on github/gitlab, but most of them are in this thread/forum. Having an index of sorts would definitely be helpful, but who will bell the cat?
|
#1917
|
||||
|
||||
__________________
JD Supporter, Plugin Dev. & Community Manager
Erste Schritte & Tutorials || JDownloader 2 Setup Download |
#1918
|
|||
|
|||
Quote:
Quote:
Last edited by TomNguyen; 09.10.2021 at 19:32. |
#1919
|
|||
|
|||
Setting Up Script to Auto-Download from a List of Links That Adds Files Over Time
So I have a list of megaupload links where I would like a script to basically check on those list of links periodically, and if new files are added to the link that it hasn't already downloaded, it will start downloading that.
Is that possible? |
#1920
|
|||
|
|||
Hello,
I'm working on a script and having trouble getting the download path from a crawled link:
Any ideas? |
Thread Tools | |
Display Modes | |
|
|