Laden Sie die neueste Version herunter (Windows, Linux)
Ruxx ist ein Inhalts-Downloader mit vielen Filtern für maximale Suchpräzision (und einer hässlichen Benutzeroberfläche). Unterstützte Websites finden Sie in der Beschreibung, ansonsten nur Abkürzungen
Beachten Sie, dass Ruxx Ihre Suche nicht auf ein paar Seiten oder ähnliches beschränkt. Sie können sogar nach etwas wie id:>=0 (alles) suchen. Dies funktioniert jedoch nicht, da Websites die maximal zurückgegebenen Suchergebnisse tatsächlich begrenzen. Für so etwas Dummes müssen Sie Ihre Suchanfragen mithilfe des ID-Filters aufteilen. Außerdem kann es sein, dass Sie wegen Missbrauchs der Ressource gesperrt werden. Ruxx ist kein Schabewerkzeug
dd-mm-yyyy
, wird ignoriert, wenn der Standardwert festgelegt ist (min.: 01-01-1970
, max.:
). Geben Sie etwas Kauderwelsch ein, um die Standardeinstellungen wiederherzustellen. Nur RX, RN, RZ, RP und EN Note that only recognized parameters will be loaded - missing parameters will just stay unchanged without any errors given, so if you want to not save some parameters (ex. window position) just remove associated rows from the file
.cfg
Dateiordner mit einer ausführbaren Datei ablegen und Ruxx wählt ihn automatisch aus und konfiguriert sich selbst. Sie müssen einen der folgenden Namen verwenden: ['ruxx.cfg', 'auto.cfg', 'settings.cfg', 'config.cfg']cf_clearance
Cookie bereitstellen und der User-Agent
Header muss mit dem übereinstimmen, der in Ihrem Webbrowser für die Zielwebsite verwendet wird ‒ Um es beim Durchsuchen dieser Website zu finden, öffnen Sie Web Developer tools -> Network
(oder ähnliches), laden Sie die Seite neu und überprüfen Sie request headers
(id:x~id:y~id:z)
was ein ODER- Gruppenausdruck ist, der Ihnen effektiv die Suche nach diesen IDs ermöglicht.1.1.284
für alle Module mit einem Workaround wieder aktiviert, läuft aber nicht parallel, also seien Sie sich dessen bewusstvideos
/ images
/ flash (RN, EN)
oder nach der Erweiterung selbst trennen. Beachten Sie, dass sowohl jpeg
als auch jpg
Dateien im JPG- Ordner abgelegt werden0.5 10 3.0 5.00
100 250 50 500
AND
Gruppe, OR
Gruppen mit Meta-Tags usw.). Als Ergebnis blinkt das Feld „Tags“ kurz grün/rot. Darüber hinaus erscheint bei Erfolg ein Fenster mit der Anzahl der gefundenen Ergebnisse. Beachten Sie, dass diese Zahl möglicherweise nicht mit der Anzahl der heruntergeladenen Dateien übereinstimmt, da Datumsfilter, Dateitypfilter und Filter für verwandte Beiträge bei dieser Schnellprüfung nicht angewendet werden. Bei Verwendung von favorited_by:X
oder pool:X
gelten spezielle Meta-Tags auch nicht für negative Tags (mit Ausnahme des favorited_by
Tags des RN-Moduls, wo es nativ unterstützt wird).Ruxx lässt normalerweise die meisten Symbole für die Tag-Suche zu, es gibt jedoch einige Besonderheiten:
*
als Platzhalter in Tags (beliebige Anzahl beliebiger Symbole). Sie können in Tags an beliebiger Stelle beliebig viele Platzhalter verwenden: b*m*e_cit*
anstelle von baltimore_city
. Für einige Suchmaschinen ist *
nur ein Symbol, das ein normales Tag enthalten kann, nämlich: RZ; Sie können jedoch weiterhin Platzhalterzeichen -t*ags
verwenden.*_city
funktioniert für RN, RS, RP und EN, aber RX gibt das Standardergebnis (alle) zurück.-tags
können zum Ausschluss verwendet werden: -rating:explicit
id:>X id: . Weitere Syntax finden Sie weiter unten- Meta
-tags
können nicht mit Ungleichheit verwendet werden, wie etwa -score:<0
. Drehen Sie stattdessen den Vergleich um: score:>=0
- Meta
-tags
können nicht mit sort: -sort:score
verwendet werden. Diese Syntax verursacht keinen Fehler, ihr Verhalten ist jedoch undefiniert. Bitte nutzen Sie Ihren gesunden Menschenverstand
sort
und order
für RX/RS bzw. RN/RP), können Sie sie nur verwenden, wenn sie nicht mit anderen Parametern (z. B. Datumsfiltern) in Konflikt stehen.id:X
(OR id:=X
), id:>X
, id: , id:>=X
, id:<=Y
. X
, Y
=
score:X
(ODER score:=X
), score:>X
, score: , score:>=X
, score:<=Y
. X
, Y
=
parent:X
(ODER parent:=X
). X
=
width:X
(ODER width:=X
), width:>X
, width: , width:>=X
, width:<=Y
. X
, Y
=
height:X
(OR height:=X
), height:>X
, height: , height:>=X
, height:<=Y
. X
, Y
=
user:X
. X
=
rating:X
. X
=
, z. B. safe
, questionable
, explicit
.md5:X
, X
=
sort:X[:Y]
. X
=
, z. B. score
, id
(Standard). Y
=
(optional), asc
oder desc
(Standard)id=X
, id>X
, id , id>=X
, id<=Y
. X
, Y
=
score=X
, score>X
, score , score>=X
, score<=Y
. X
, Y
=
favorited_by=X
. X
=
width=X
, width>X
, width , width>=X
, width<=Y
. X
, Y
=
height=X
, height>X
, height , height>=X
, height<=Y
. X
, Y
=
user=X
. X
=
rating:X
. X
=
, z.B. q
, s
usw.order=X
. X
=
, id_desc
oder score_desc
id:X
(OR id:=X
), id:>X
, id: , id:>=X
, id:<=Y
. X
, Y
=
score:X
(ODER score:=X
), score:>X
, score: , score:>=X
, score:<=Y
. X
, Y
=
width:X
(ODER width:=X
), width:>X
, width: , width:>=X
, width:<=Y
. X
, Y
=
height:X
(OR height:=X
), height:>X
, height: , height:>=X
, height:<=Y
. X
, Y
=
user:X
. X
=
rating:X
. X
=
, z. B. safe
, questionable
, explicit
.sort:X[:Y]
. X
=
, z. B. score
, id
(Standard). Y
=
(optional), asc
oder desc
(Standard)id:X
(OR id:=X
), id:>X
, id: , id:>=X
, id:<=Y
. X
, Y
=
score:X
(ODER score:=X
), score:>X
, score: , score:>=X
, score:<=Y
. X
, Y
=
id=X
, id>X
, id , id>=X
, id<=Y
. X
, Y
=
score=X
, score>X
, score , score>=X
, score<=Y
. X
, Y
=
favorited_by=X
. X
=
width=X
, width>X
, width , width>=X
, width<=Y
. X
, Y
=
height=X
, height>X
, height , height>=X
, height<=Y
. X
, Y
=
poster=X
. X
=
order=X
. X
=
, id_desc
oder score_desc
id:X
, id:>X
, id: , id:>=X
, id:<=Y
. X
, Y
=
score:X
, score:>X
, score: , score:>=X
, score:<=X
. X
, Y
=
.
favorited_by:X
, favoritedby:X
oder fav:X
. X
=
parent:X
. X
=
width:X
, width:>X
, width: , width:>=X
, width:<=Y
. X
, Y
=
height:X
, height:>X
, height: , height:>=X
, height:<=Y
. X
, Y
=
user:X
. X
=
rating:X
. X
=
, z. B. safe
, questionable
, explicit
md5:X
, X
=
sort:X[_asc|_desc]
. X
=
, z. B. score
, id
(Standard id_desc
):X..
(z. B. score:5000..
ist gleich score:>=5000
):..X
(Bsp. score:..-500
<=> score:<=-500
):X..
(Bsp. id:5000000..
<=> id:>=5000000
):X..Y
(z. B. score:90..99
<=> score:>=90 score:<=99
)OR
GruppenOR
Gruppe ist im Vergleich zu dem, was Sie normalerweise für RX verwenden würden, vereinfacht: (tag1~tag2~...~tagN)
anstelle von ( tag1 ~ tag2 ~ ... ~ tagN )
OR
Gruppen mit jedem Modul, unabhängig davon, ob die Website dies nativ unterstützt oder nichtOR
Gruppe darf nicht negativ sein und muss entpackt werden:-(tag1~tag2~tag3)
=> -tag1 -tag2 -tag3
OR
Gruppen (id:=X~score:=Y)
fehlerhaft (RX), nicht immer zuverlässig (EN) oder schlichtweg unmöglich (RS, RN, RZ, RP) ist, wird Ruxx solche Gruppen immer auspacken diese richtig verarbeiten-(tag1,tag2,...,tagN)
. Ruxx ermöglicht das Herausfiltern von Tag-Kombinationen (Beiträge, in denen alle Tags in der Gruppe vorhanden sind), was mit der Website-Suchmaschine normalerweise nicht möglich ist. Zusätzlich zu den normalen Tag-Symbolen können Sie in negativen Gruppen-Tags Platzhaltersymbole verwenden ?
und *
für any symbol
bzw. any number of any symbols
. Sie können auch das Pipe-Symbol |
verwenden für direkte Regex- OR
Gruppenzusammensetzung. Beispiel: -(tag?1,ta*g2|tag3)
wird effektiv in die regulären Ausdrücke "^tag.1$"
und "^ta.*g2|tag3$"
konvertiert, um zu prüfen, ob Beiträge mit Tags angezeigt werden, die mit beiden übereinstimmen herausgefiltert-tags
prüft die negative Gruppe keine Tag-Aliasesort:...
“ oder nur mit -tags
erstellt werden-tags
hinzuzufügen, um die Suche einzugrenzen. Wenn die resultierende Abfrage zu lang ist, erstellt Ruxx automatisch eine bestimmte negative Gruppe aus übermäßig -tags
und verwendet diese als zusätzlichen Filter. Die Meldung wird wie folgt angezeigt: 'excluded tags combination' custom filter(s) parsed
RZ
: max. 3
tags
, max. 3
-tags
, 6
total
RP
: max. 3
tags & -tags
, total
3
EN
: max. 40
tags & -tags
, 40
total
, max. 1
wildcard
-tags
in eine negative Gruppe umgewandelt und lokal als interner Filter verwendet (und verfälschen die Ergebnisse der „Tags prüfen“). Beachten Sie, dass dies nur für -tags
gilt. Das Überschreiten des positiven Tag-Limits führt zu einem Fehler-t*ags
manuell in eine einzelne negative Gruppe umzuwandeln, um eine unerwünschte Tag-Erweiterung (siehe unten) zu verhindern, die zu zu vielen -tags
führt. Das ist eigentlich ganz einfach: '-a -b -c -d* -f*g*h*j' -> '-a -b -c -(*,d*|f*g*h*j)'
RZ
tags
, -tags
und tags
in OR
Gruppe müssen gültig sein, um Suchergebnisse zu erhalten. Tags gelten nur dann als gültig, wenn sie:r
, t
usw., auch &
und Unicode-Escape-Sequenzen wie u00a0
t*ags
: nie (ungültig)-t*ags
: immer(t1~t*2)
: nie (ungültig)-(t1,t*2)
: nie (in Regex konvertiert)Expanding tags from wtag ' pale*s ' ...
- ' pale_eyes '
- ' pale_soles '
%
, z. B.: %mumbling%
(1 Beitrag, nicht gelistet) oder, falls negativ: -%mumbling%
Ruxx bietet Listen bekannter Tags für alle Module (außer RS), die auch verwendet werden können, um zu versuchen, jedes im Feld „Tags“ eingegebene Wort zu vervollständigen
Found 5 tag lists:
- /rx_tags.txt
- /rn_tags.txt
- /rz_tags.txt
- /rp_tags.txt
- /en_tags.txt
2tags/
) hat.
. Wenn Sie ihn zum ersten Mal verwenden, versucht Ruxx, aktuelle Modul-Tags in den Speicher zu laden. Dies erfordert etwas zusätzlichen Speicher. Dieser Speicher wird auch freigegeben, wenn die Funktion zur automatischen Vervollständigung aktiviert ist wieder deaktiviertRuxx bietet auf keiner der unterstützten Websites eine native Authentifizierungsmethode. Um Ihre Identität bei der Suche zu verwenden, müssen Sie drei einfache Schritte befolgen:
Web Developer tools -> Network
, laden Sie die Seite neu und suchen Sie nach request headers
Headers / Cookies
und füllen Sie die Ruxx-Verbindungstabellen entsprechend aus:User-Agent
(vorhandenen Wert entfernen)cf_clearance
, user_id
, pass_hash
cf_clearance
, shm_user
, shm_session
user_id
, pass_hash
_danbooru_session
, remember
cf_clearance
Cookies beträgt 15 Minuten Das Herunterladen von Benutzerfavoriten mithilfe der Suchfunktion für native Tags ist nur mit RN, RP und EN verfügbar (siehe Meta-Tags oben). Andere Websites implementieren dies weder über Tags noch über die API. Um Benutzern das Herunterladen ihrer Favoriten zu ermöglichen, implementiert Ruxx auch für andere Module den Tag favorited_by
. Es handelt sich um eine zusätzliche Funktionsebene, aber Folgendes benötigen Sie, um sie zu nutzen:
favorited_by:X
. X
=
. Benutzer-ID, die Sie auf der Favoritenseite des Benutzers erhalten können. Sie ist Teil seiner Webadresse. Hinweis: Diese Syntax ist auch als RN-/RP-/EN-Tag nicht ungültig, führt dort jedoch nichts auscf_clearance
(siehe oben), da es nicht Teil von Dapi istid:x
keine Meta-Tags unterstützt, kann es dennoch favorited_by:name / id
verwenden, tags
/ -tags
können nicht verwendet werden (negative Gruppen können), gleichzeitig ist es möglich erleidet keine Verlangsamung Das Herunterladen des Post-Pools mithilfe der Suchfunktion für native Tags ist nicht möglich und nur RX und EN implementieren die Pool-Funktionalität
Um den RX-Pool herunterzuladen, verwenden Sie das spezielle pool
Tag:
pool:X
. X
=
. Die Pool-ID erhalten Sie auf der Pool-Seite. Sie ist Teil der Webadressepool:Y
. Y
=
. Der Poolname muss in Kleinbuchstaben geschrieben werden und alle Leerzeichen müssen durch Unterstriche ersetzt werden, z. B. 'Long Night' -> 'pool:long_night'
cf_clearance
(siehe oben), da es nicht Teil von Dapi istDas EN-Modul ermöglicht auch die Erstellung von Beitragssätzen. Im Wesentlichen unterscheiden sie sich nicht von Pools:
set:X
, X
=
. Die Set-ID kann aus der Set-Seitenadresse extrahiert werdenset:Y
. Y
=
. Wichtig: Der Kurzname des Sets ist nicht gleich dem Namen in der Setliste und wird nur auf einer eigenen Seite aufgeführt! Es ist möglich, Ruxx als Cmdline-Tool zu verwenden. Im Hauptfenster finden Sie den Abschnitt Cmd
. Er generiert Ihre Cmdline-Argumente jedes Mal, wenn Sie eine Änderung vornehmen. Verwenden Sie diese Argumente als Beispiel. Im Konsolenfenster müssen Sie möglicherweise einige davon maskieren (Pfad, OR
Gruppen, Tags mit Punkten usw.). Die meisten Argumente sind jedoch optional – die einzigen erforderlichen sind tags
(Standardmodul ist RX).
Python 3.9 oder höher erforderlich. Weitere Abhängigkeiten finden Sie in requirements.txt
. Installieren mit:
python -m pip install -r requirements.txt
Um Ruxx direkt mit dem Python-Ziel ruxx_cmd.py
oder ruxx_gui.py
auszuführen
python ruxx_cmd.py <...args>
– Ruxx-Befehl ausführenpython ruxx_gui.py
– Ruxx-GUI ausführen ...oder verwenden Sie ruxx.py
einfach universell
python ruxx.py <...args>
– Ruxx-Befehl ausführenpython ruxx.py
– Ruxx-GUI ausführen Rufen Sie Ruxx --help
oder python ruxx_cmd.py --help
auf, um vollständige Hilfe zu erhalten
Ruxx protokolliert die meisten seiner Aktionen, was Sie im Protokollfenster sehen können
Wenn ein Problem auftritt, werden einige Informationen angezeigt, es sei denn, es handelt sich um einen unerwarteten schwerwiegenden Fehler. Ruxx ist in der Lage, die meisten nicht schwerwiegenden Netzwerkfehler und E/A-Pannen zu beheben, einschließlich abgebrochener Suchvorgänge (Suchüberlastung), nicht übereinstimmender E-Tags, nicht übereinstimmender Dateigrößen, fehlerhafter Pakete usw.
Ruxx ist in Python geschrieben (3.9 für Windows, 3.11 für Linux). Codezeilen: 12700+. Mit PyInstaller 6.1 erstellte ausführbare Dateien
Für Fehlerberichte, Fragen und Funktionswünsche nutzen Sie unseren Issue-Tracker