Es hat sich einiges getan. seit dem ich diesen thread erstellt hab.
ich schreibe eine neue anleitung und verlinke sie dann hier...
http://forums.openmediavault.org/viewtopic.php?f=3&t=5068
^^neue anleitung
Es hat sich einiges getan. seit dem ich diesen thread erstellt hab.
ich schreibe eine neue anleitung und verlinke sie dann hier...
http://forums.openmediavault.org/viewtopic.php?f=3&t=5068
^^neue anleitung
4. Flexget installiern
config erstellen:
Jetzt ist eure individualisierung dran
Hier meine config:
presets:
global:
pyload:
api: http://localhost:8888/api
queue: no
username: admin
password: xxxxx
parse_url: no
hoster:
- UploadedTo
- ShareOnlineBiz
multiple_hoster: yes
tv:
series:
720p:
- New Girl
- Circus Halligalli
- Misfits
- Hannibal
- The Slap
- Tatort
- The Following
- Suits
- Game of Thrones
- Sherlock
- Dexter
- White Collar
movies:
regexp:
reject:
- (?i)\b(1080p)\b: {from: title}
- (?i)\b(COMPLETE)\b: {from: title}
- (?i)\b(Remux)\b: {from: title}
- (?i)\b(Eroti(c|k))\b: {from: title}
- \b(AC3MD)\b: {from: title}
- (?i)\b(Web-DL)\b: {from: title}
- (?i)\b(S0)\b: {from: title}
- (?i)\b(XXX)\b: {from: title}
tasks:
serienjunkies.org:
rss: http://serienxxxkies.org/xml/feeds/episoden.xml
accept_all: no
preset: tv
serienxxxkies:
language: de
hoster: ul
Top-Releases:
rss: http://feed43.com/60642441034xx2.xml
accept_all: yes
preset: movies
720p:
rss: http://feed43.com/88621384xx85.xml
accept_all: yes
preset: movies
Alles anzeigen
kurze erklärung zu feed43.
feed43 generiert anhand von deinen eigens angegebenen "extraction rules" ein rss feed den du dann mit flexget auslesen kannst.
mit feed43 müsst ihr euch aber selbst auseinander setzen - zumal ich hier nicht angeben kann wo ich meine links her beziehe.
aber ich poste hier mal mein "extraction - code" mit dem ich die titel und links herausfiltere
auf der webseite unter "Item (repeatable) Search Pattern" einzufügen:
<h1 id="{*}"><a href="{*}" rel="{*}" title="{*}">{%}</a></h1>{*}<strong>Download: </strong><a target="_blank" href="{%}" >Uploaded.net</a><br />
-den eben erstellten rss einfach in der flexget config.yml angeben
-falls ihr eure config testen wollt
EDIT
-das ganze ohne "--test" im OMV webui als cron job stündlich ausführen lassen
dann gibts da noch ne seite wo ich meine amerikanischen serien lade und via plugin in pyLoad einfüge
touch /root/.pyload/userplugins/hooks/DirectDownloadFetcher.py
nano /root/.pyload/userplugins/hooks/DirectDownloadFetcher.py
# -*- coding: utf-8 -*-
"""
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License,
or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, see <http://www.gnu.org/licenses/>.
@author: wongdong thanks to mkaay for Ev0-fetcher
"""
from module.plugins.Hook import Hook
from module.lib import feedparser
from time import mktime, time
class DirectDownloadFetcher(Hook):
__name__ = "DirectDownloadFetcher"
__version__ = "1.0"
__description__ = "Checks your personal Newsfeed on Directxxxxxxxx.tv for new episodes. "
__config__ = [("activated", "bool", "Activated", "False"),
("rssnumber", "str", "Your personal RSS identifier (subscribe on Directxxxxxxxx.tv and enter the feednumber)", "0"),
("interval", "int", "Check interval in minutes", "120"),
("queue", "bool", "Move new shows directly to Queue", "False"),
("hoster", "str", "Hoster to use (comma seperated)", "FilesonicCom,UploadStationCom,FilejungleCom,DepositfilesCom,FileserveCom,FilefactoryCom")]
__author_name__ = ("wongdong")
__author_mail__ = ("wongdong@gmx.net")
def setup(self):
self.interval = self.getConfig("interval") * 60
def filterLinks(self, links):
results = self.core.pluginManager.parseUrls(links)
sortedLinks = {}
for url, hoster in results:
if hoster not in sortedLinks:
sortedLinks[hoster] = []
sortedLinks[hoster].append(url)
for h in self.getConfig("hoster").split(","):
try:
if (len(sortedLinks[h.strip()]) > 0) : return sortedLinks[h.strip()] # returns the first hoster with links in it (a bit hardcore but whatever...)
except:
continue
return []
def periodical(self):
self.interval = self.getConfig("interval") * 60 # Re-set the interval if it has changed (need to restart pyload otherwise)
feed = feedparser.parse("http://Directxxxxxxxx.tv/rss/"+self.getConfig("rssnumber")) # This is your personal feed Number from Directxxxxxxxx.tv
lastupdate = 0 # The last timestamp of a downloaded file
try:
lastupdate = int(self.getStorage("lastupdate", 0)) # Try to load the last updated timestamp
except:
pass
maxtime =lastupdate
for item in feed['entries']: # Thats a single Episode item in the feed
currenttime = int(mktime(item['updated_parsed']))
if ( currenttime > lastupdate): # Take only those not already parsed
links = str(item['summary'].replace("\n","").replace("<br /><br />","<br />")).split("<br />") # Get all links (first element is the name)
title = links.pop(0).strip()
links = filter (lambda x:x.startswith("http://") , links) # remove all non-links (Empty lines, and whatnot)
self.core.log.info("DDFetcher: New Episode found: %s" % (title))
if (len(self.filterLinks(links)) > 0) :
self.core.api.addPackage(title.encode("utf-8"), self.filterLinks(links), 1 if self.getConfig("queue") else 0)
maxtime = max(maxtime, currenttime) # no links found. Try again next time.
else:
self.core.log.info("DDFetcher: Couldn't parse any valid links from this episode. Check allowed hosters. Available links are: %s" % (links))
if (maxtime == lastupdate):
self.core.log.debug("DDFetcher: No new Episodes found")
else:
self.setStorage("lastupdate",int(maxtime))
Alles anzeigen
Die seite kann ich auch nicht posten - sind aber genug hinweise drin - also hirn einschalten
Den code hab ich wegen den URLS anpassen müssen.
falls ihr die seite also kennt einfach wieder anpassen oder bei mir per pn anfragen
pyLoad neustarten:
- Browser öffnen
- Nas-ip:8888
- config - plugins - DirectDownloadFetcher
- und dort dann eure einstellungen treffen
platzhalter - reserviert
So bin jetzt auch mal dazu gekommen mir die scripte wenigstens etwas anzusehen. Seh ich das richtig dass das filebot script nur nach /media/5a24e136-09b9-48e1-95db-b44d5db3e28a/Medien verschiebt und nicht in einen spezifischen Serien Ordner? Oder verschiebst du von Medien aus von hand in die entsprechenden Serien Ordner?
"/root/.pyload/scripts/unrar_finished/anyscript.sh" wird immer dann von pyload ausgeführt wenn ein entpackvorgang fertig gestellt ist? Oder wie funzt das?
Da ich persönlich im moment lieber mit dem JDownloader v2 arbeite (lokal auf meinem Rechner) würde ich mir das vllt. etwas anders implementieren.
Ich würde die dateien manuell herunterladen und auf das NAS schieben in ein Dropfolder. Dieses würde alle 15min (?) per cron überprüft werden ob dateien vorhanden sind (könnte kritisch werden wenn der cron greift während ich am rüberschaufeln bin). Dann filebot+verschieben. Allerdings sehe ich im moment nicht wo du die dateien in ihre Zielverzeichnisse kopierst, das würde mich noch interessieren.
Außerdem wäre cool wenn du noch erklärst was in dem script für filebot eigentlich genau abläuft, ich erkenne z.b. auch nicht wie du die dateien formatierst.
Mein aktuelles Format ist:
{n.replaceAll(/[!?.]+$/).replaceAll(/[`´‘’ʻ]/, "'").replace(':',' -')} - {s00e00} - {t.replaceAll(/[!?.]+$/).replaceAll(/[`´‘’ʻ]/, "'")}
Sieht dann in etwa so aus: (der doppelpunkt wird durch " - " ersetzt)
Es wäre noch die überlegung zukünftig das Schema auf folgendes zu ändern:
Ist schon einige Zeit her dass ich pyload verwendet habe, laut website ist es möglich auch per GUI per remote zu connecten (letztesmal hatte ich irgendwie nur das webinterface, welches nur umständlich zu clicknload zu bewegen war). Kannst du da was dazu sagen wie gut die remote gui funktioniert? Über das Webinterface fand ich das recht umständlich.
Gruß
David
Edit: Hab dir ne PM geschickt, ich glaub ich muss mir dass doch so einrichten, wenn ich mir die quelle anschaue... wäre nur schön zu wissen wie gut die pyload remote gui funktioniert!
Zitat"/root/.pyload/scripts/unrar_finished/anyscript.sh" wird immer dann von pyload ausgeführt wenn ein entpackvorgang fertig gestellt ist? Oder wie funzt das?
^^das hast du ganz richtig erkannt - so funktioniert das.
Filebot kann zwar auch entpacken - nur leider nicht mit passwörtern. Also soll das pyLoad übernehmen.
#!/bin/sh
SAVEIFS=$IFS
IFS=$(echo -en "\n\b")
# Globale Variablen #
BaseDir=/media/5a24e136-09b9-48e1-95db-b44d5db3e28a
DownloadDir=${BaseDir}/Medien/Downloads/
MediaDir=${BaseDir}/Medien
#Pyload
DownloadFolder=$MediaDir/$1
# Funktionen #
sortiere(){
filebot -script fn:amc "$DownloadFolder" --output "$MediaDir" --conflict override -non-strict --action move --def "ignore=\b(?i:doku)\b" "ignore=\b(?i:xxx)\b" clean=y artwork=n xbmc=192.168.0.104,192.168.0.109 subtitles=de
#http://www.filebot.net/forums/viewtopic.php?f=4&t=215
}
cleaning(){
filebot -script fn:cleaner "$DownloadFolder" --def root=y "exts=jpg|nfo|rar|etc" "terms=sample|trailer|etc"
#http://www.filebot.net/forums/viewtopic.php?f=4&t=5#p1341
}
# Ausführen #
IFS=$SAVEIFS
echo '### Filebot AMC ####'
sortiere
echo '### aufraeumen ###'
cleaning
Alles anzeigen
Zu erklärung:
sortiere und cleaning sind funktion die ich am schluss vom script ausführe.
^^da passiert schussendlich die magie
Die globalen variablen:
ich geb ordnername einfach ein "schöneren" namen um das script anschaulicher zu halten
Das einzige was dort wichtig ist, ist "$1" bei der $Downloadfolder deklarierung.
Die $1 wird von pyLoad nach dem entpacken mit übergeben und ich weiß dadurch genau wo das entpackte paket ist. (sozusagen $1 = PaketDownloadordner)
Respektive vom pyLoad ordner aus gesehn seht $1 so dann aus: /downloads/blablapaket.
Also wird von FileBot nur dieser eine ordner behandelt - wenn ich einfach einen downloadfolder angeb nimmt er alle rar's und entpackt mir die
genauso einen extrahierordner. Filebot verschiebt, egal ob die datei gerade noch am entpacken ist.
Zur Sortierung.
FileBot legt 2 ordner in /media/5a24e136-09b9-48e1-95db-b44d5db3e28a/Medien an
1x Movies
1x Tv Shows
Tv Shows seht so aus:
TV Shows/SerienName/Season 0x/Serienname - S0xE0x - title.ext
TV Shows/Breaking Bad/Season 04/Breaking Bad - S04E01 - Box Cutter.mkv
Movies
Movies/Filmname (jahr)/Filmname (jahr).ext (jahr)
Movies/American History X (1998)/American History X (1998).mkv
ich hoffe ich konnte etwas licht ins dunkel bringen.
ansonsten gerne weiter fragen.
Ich wollte mich grade dransetzen und es in einer VM ausprobieren. Ich hänge aber schon dabei fest pyload zu installieren, siehe: http://forums.openmediavault.o…php?f=13&t=2038&start=250
Gruß
David
PS: Meine Ordnerstruktur ist:
versuch das mal - das hat den vorteil das schon alles vorkonfiguriert ist
cd /
wget https://raw.github.com/cptjhmiller/OMV_Installers/master/omvinstalls.sh
chmod +x ./omvinstalls.sh
./omvinstalls.sh
wenn das immernoch nicht geht
manuell
apt-get install python
apt-get install python-crypto python-pycurl python-imaging python-beaker python-qt4 tesseract-ocr tesseract-ocr-eng gocr unrar
apt-get install python-django
cd /
wget http://download.pyload.org/pyload-cli-v0.4.9-all.deb
dpkg -i pyload-cli-v0.4.9-all.deb
pyLoadCore -s
deine ordnerstruktur ist ja sehr exotisch. Da müsstest du dir ein extra Script schreiben.
Vielleicht dann aber trotzdem FileBot die vorarbeit machen lassen um das ganze zu vereinfachen
Warum ist meine Ordnerstruktur Exotisch? Meinst du wegen dem "DE + EN 1080p" oder weil ich die Serien in 0-C D-... und so weiter unterteile? Oder beides?
Gruß
David
Edit: Ich würde mich ja schon damit zufriedengeben wenn filebot die dateien nach /media/UUID/Serien/ verschiebt, in die Ordner rein kann man dann auch noch schnell per dragndrop machen - allerdings muss man da dann noch aufpassen ob man eine englische folge hat oder eine DL folge... wie gesagt da ich viel englisch habe deklarier ich das extra damit sich meine freunde nicht aufregen wenn sie sich was rüberkopieren.
beides
okay.
dann installier einfach filebot und mach ein cronjob alle halbe stunde denann ausführt.
für english und deutsch automatisch zu seperieren weiß ich jetzt leider nichts.
was du aber machen könntest
du könntest 2 verschieden ablageordner angeben.
sozusagen 2 filebotscripts.
1x für deutsch
1x für english
seperieren tust du indem du in 2 versch. ordner dein zeug legst.
englishfilebotscript sucht [input]english ordner ab und sortiert in [output]english-tvshows
deutschfilebotscript sucht [input]deutsch ordner ab und sortiert in [output]deutsch-tvshows
Siehe mein edit.
Gruß
David
beides
okay.
dann installier einfach filebot und mach ein cronjob alle halbe stunde denann ausführt.
für english und deutsch automatisch zu seperieren weiß ich jetzt leider nichts.
was du aber machen könntest
du könntest 2 verschieden ablageordner angeben.
sozusagen 2 filebotscripts.
1x für deutsch
1x für english
seperieren tust du indem du in 2 versch. ordner dein zeug legst.
englishfilebotscript sucht [input]english ordner ab und sortiert in [output]english-tvshows
deutschfilebotscript sucht [input]deutsch ordner ab und sortiert in [output]deutsch-tvshows
Ich probier es aus sobald pyload hier korrekt läuft, nach nem reinstall funzt das webinterface nicht mehr, mal schauen was jhmiller dazu sagt. Kannst du mir dann noch helfen wie das mit der remote gui funzt? Hatte das grade eben noch probiert aber keine verbindung bekommen...
Gruß
David
PS: dein post der grade noch reinkam: Das heißt ich müsste die watcherscripte auch so einstellen dass sie nach english-ordner laden bzw. für sj zum beispiel nach deutsch-ordner laden?
du musst glaub im setup auf 0.0.0.0 einstellen nicht auf localhost.
Ah, damit geht das WI wieder...
Gruß
David
Also nur um das hier nochmal festzuhalten, das automatische Downloaden funktioniert für mich schonmal - super arbeit von Gutz-Pilz.
Allerdings bin ich noch auf der suche nach einer geeigneten renamer automatisierung, dazu habe ich eine Anfrage im filebot forum gestellt, wenn da was gescheites bei rum kommt werde ich es hier hinzufügen.
Gruß
David
So. Läuft jetzt alles rund soweit.
Mein Skript:
#!/bin/bash
DownloadDir=/root/.pyload/Downloads/
TargetDir=/media/d3c21c66-af4b-41d4-b098-462e83fa641d/Serien
cd $DownloadDir
count=`ls -1 *.zip *.rar *.7zip 2>/dev/null | wc -l`
if [ $count != 0 ]
then
abort=true
fi
if [ abort == true ]
then
echo "Hier sind noch Archive... abbruch!"
else
filebot -rename . --db thetvdb --format "$TargetDir/{n.replaceAll(/[!?.]+\$/).replaceAll(/[\`´‘’ʻ]/, \"'\").replace(':',' -')} - {s00e00} - {t.replaceAll(/[!?.]+\$/).replaceAll(/[\`´‘’ʻ]/, \"'\")}" -non-strict
fi
Alles anzeigen
Ausführen lasse ich es unter "all_dls_processed".
Gruß
David
PS: Jetzt muss ich nur noch feed43 einrichten
Sehr schön.
danke für die zusätzliche inspiration
hier mal mein code wie ich das ganze handhabe.
l
#!/bin/bash
SAVEIFS=$IFS
IFS=$(echo -en "\n\b")
# Globale Variablen #
BaseDir=/media/5a24e136-09b9-48e1-95db-b44d5db3e28a
DownloadDir=${BaseDir}/Medien/Downloads/
MediaDir=${BaseDir}/Medien
#Pyload
DownloadFolder=$DownloadDir/$1
myarray=(`find $DownloadFolder -maxdepth 5 -name "*.mkv"`)
if [ ${#myarray[@]} -gt 0 ]; then
# Funktionen #
sortiere(){
sleep 10
filebot -script fn:amc "$DownloadFolder" --output "$MediaDir" --conflict override -non-strict --action move --def "ignore=\b(?i:doku)\b" "ignore=\b(?i:xxx)\b" cle$
#http://www.filebot.net/forums/viewtopic.php?f=4&t=215
}
cleaning(){
filebot -script fn:cleaner "$DownloadFolder" --def root=y "exts=jpg|nfo|rar|etc" "terms=sample|trailer|etc"
#http://www.filebot.net/forums/viewtopic.php?f=4&t=5#p1341
}
xbmc(){
curl -s -d '{"jsonrpc":"2.0","method":"VideoLibrary.Scan","id":1}' -H 'content-type: application/json;' http://localhost:8585/jsonrpc?VideoLibrary.Scan
}
# Ausfuehren #
IFS=$SAVEIFS
echo '### Filebot AMC ####'
sortiere
echo '### aufraeumen ###'
cleaning
echo '### LibraryScan ###'
xbmc
else
echo "####### keine MKV da ############"
fi
Alles anzeigen
PS:
falls du eine gute config mit flexget zustande bekommst kannst du die gerne hier posten...
ich glaube flexget ist für jederman eher "trial &error" geschichte
Also der fetcher hat sich heute schonmal gut gemacht. (Allerdings ist mir hinterher aufgefallen dass Breaking Bad nur 720p ist )
Mit Flexget hab ich bisher nur getestet. Was mich irritiert hat dass wenn ich eine Serie sowohl bei 720p als auch in einem neu erstellten 1080p Bereich eintrage dass dann nur die 1080p (weil die dahinter steht) folge ausgewählt wird. Bevor ich das dazunehme muss ich damit noch ein wenig rumspielen.
Edit: Weißt du schon wie man mit flexget auf "[deutsch]" filtert?
Gruß
David
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!