Blacklist

Hier finden YaCy User Hilfe wenn was nicht funktioniert oder anders funktioniert als man dachte. Bei offensichtlichen Fehlern diese bitte gleich in die Bugs (http://bugs.yacy.net) eintragen.
Forumsregeln
In diesem Forum geht es um Benutzungsprobleme und Anfragen für Hilfe. Wird dabei ein Bug identifiziert, wird der thread zur Bearbeitung in die Bug-Sektion verschoben. Wer hier also einen Thread eingestellt hat und ihn vermisst, wird ihn sicherlich in der Bug-Sektion wiederfinden.

Blacklist

Beitragvon gaston » Fr Jan 06, 2012 2:41 pm

Hallo

ich versuche gerade ein Link mit eine Regex zu blockieren.

Muss man dafür allowRegex=true setzen? Habe es über ConfigProperties_p.html versucht, damit geht das aber nicht, wird zumindest nicht gespeichert.

Warum wird bei einen Regex überhaupt zwischen Host und Path unterschieden?

Beispiel-Links
Code: Alles auswählen
http://www.test.de/stats
http://www.test.de/stats.php...

Der Regex dazu
Code: Alles auswählen
.*/stat(s$|s\.).*

".*" ist für den Host, der Rest für den Path, was stimmt hier nicht?

gaston
gaston
 
Beiträge: 143
Registriert: Fr Jan 06, 2012 2:22 pm

Re: Blacklist

Beitragvon gaston » Fr Jan 06, 2012 3:19 pm

Noch was anderes. Kann es sein das das teilen der Blackliste die Vorgabe ist?

Wenn das so ist würde ich es gut finden das genau anders herum ist, würde das finden von Blacklisten vereinfachen.

gaston
gaston
 
Beiträge: 143
Registriert: Fr Jan 06, 2012 2:22 pm

Re: Blacklist

Beitragvon gaston » Mi Jan 11, 2012 1:08 pm

gaston hat geschrieben:Beispiel-Links
Code: Alles auswählen
http://www.test.de/stats
http://www.test.de/stats.php...

Der Regex dazu
Code: Alles auswählen
.*/stat(s$|s\.).*

".*" ist für den Host, der Rest für den Path, was stimmt hier nicht?

Alle im Urlaub, nicht verstanden, zu schwierig oder ist es ein Bug und es gibt z.Z. keine Lösung?
gaston
 
Beiträge: 143
Registriert: Fr Jan 06, 2012 2:22 pm

Re: Blacklist

Beitragvon Lotus » Mi Jan 11, 2012 9:23 pm

Probier es mal mit doppeltem escapen. \\ statt \
Lotus
 
Beiträge: 1699
Registriert: Mi Jun 27, 2007 3:33 pm
Wohnort: Hamburg

Re: Blacklist

Beitragvon gaston » Mi Jan 11, 2012 10:50 pm

Das scheint ein Bug zu sein. Ich habe jetzt eine neue Blackliste erstellt mit

.*/stat(s$|s\.).*
.*/stat(s$|s\\.).*

"Blacklist testen" hat sich nicht beschwert, die Links werden aber nicht geblockt.

www.test.de/stats
www.test.de/stats.php$test=1

Mit ein anderen Regex Testprogramm ist "/stat(s$|s\.).*" aber richtig.
gaston
 
Beiträge: 143
Registriert: Fr Jan 06, 2012 2:22 pm

Re: Blacklist

Beitragvon Lotus » Do Jan 12, 2012 1:52 pm

Kann ich nachvollziehen.
Ich habe mal das hier gelesen: http://www.yacy-websuche.de/wiki/index. ... Blacklists
und *.test.de/stat(s$|s\..*) funktioniert zumindest schonmal für alle test-Domains.
Lotus
 
Beiträge: 1699
Registriert: Mi Jun 27, 2007 3:33 pm
Wohnort: Hamburg

Re: Blacklist

Beitragvon gaston » Do Jan 12, 2012 11:22 pm

Lotus hat geschrieben:...und *.test.de/stat(s$|s\..*) funktioniert zumindest schonmal für alle test-Domains.

Es funktioniert auch "*.de/stat(s$|s\..*)", aber das wollte ich ja verhindern das man für jede Endung ein neuen Eintrag machen muss. Eigentlich sollte man laut Beschreibung auch nur ein Regex angeben können, ohne Trennung zwischen Host und Path.
gaston
 
Beiträge: 143
Registriert: Fr Jan 06, 2012 2:22 pm

Re: Blacklist

Beitragvon bluumi » Fr Jan 13, 2012 4:47 pm

gaston hat geschrieben:
Lotus hat geschrieben:...und *.test.de/stat(s$|s\..*) funktioniert zumindest schonmal für alle test-Domains.

.. für jede Endung ein neuen Eintrag machen muss. Eigentlich sollte man .. nur ein Regex ... benötigen .


Ich bin jedenfalls gespannt auf eine Lösung. Ich habe ein ähnliches Problem entdeckt als mich jemand einige Bildergalleries (remote crawl) "ansurfen" liess. Da hat es massiv URLS von Subdirectorys ge-schneit.
bluumi
 
Beiträge: 388
Registriert: Mi Okt 08, 2008 7:27 am

Re: Blacklist

Beitragvon gaston » Mo Jan 16, 2012 9:34 pm

Jetzt habe ich es. Der "Regex" muss so ausehen..
Code: Alles auswählen
.*.*/stat($|s$|s\..*)
gaston
 
Beiträge: 143
Registriert: Fr Jan 06, 2012 2:22 pm

Re: Blacklist

Beitragvon gaston » Di Sep 04, 2012 5:34 pm

Bin jetzt erst mal wieder offline weil YaCy meine Regex so zerpflückt das diese nicht mehr funktionieren :(

Habe mir extra ein Testprogramm geschrieben wo mein Regex funktioniert, nur YaCy schnallt das nicht, weil hier irgendwie in host und path getrennt wird, oder was macht YaCy damit!?

In den YaCy-Beispielen steht aber das man _ein_ Regex benutzen kann :?

Der Regex sieht so aus ...
"^(?:(?!/www\.test\.).)*$"

... im Test-Quelltext so ...
"^(?:(?!/www\\.test\\.).)*$"
Keine Fehler...

Im YaCy-Log steht aber das, wie man sieht schneidet YaCy vorne einfach was ab...
Code: Alles auswählen
E 2012/09/04 18:19:11 STARTUP YaCy cannot start: Unmatched closing ')' near index 12
www\\.test\\.).)*$
            ^
java.util.regex.PatternSyntaxException: Unmatched closing ')' near index 12
www\\.test\\.).)*$

   at java.util.regex.Pattern.error(Pattern.java:1924)
   at java.util.regex.Pattern.compile(Pattern.java:1669)
   at java.util.regex.Pattern.<init>(Pattern.java:1337)
   at java.util.regex.Pattern.compile(Pattern.java:1022)
   at net.yacy.repository.Blacklist.loadList(Blacklist.java:226)
   at net.yacy.repository.Blacklist.loadList(Blacklist.java:249)
   at net.yacy.repository.Blacklist.loadList(Blacklist.java:183)
   at de.anomic.data.ListManager.reloadBlacklists(ListManager.java:210)
   at net.yacy.search.Switchboard.<init>(Switchboard.java:528)
   at net.yacy.yacy.startup(yacy.java:207)
   at net.yacy.yacy.main(yacy.java:636)
gaston
 
Beiträge: 143
Registriert: Fr Jan 06, 2012 2:22 pm

Re: Blacklist

Beitragvon Orbiter » Di Sep 04, 2012 5:44 pm

öhm, regexe in blacklist urls sind nur für den Pfad-Teil zulässig, für den host gibts keine regex, da steht das '*' entweder vorne oder hinten am host und ist ein catchall.

Ich verstehe aber dass das höchst verwirrend ist. Zum Glück habe ich gerade im Kontext eines Kundenwunsches mit der Blacklist zu tun, ich muss das aber erst noch (dort) ausdiskutieren ob wir hier was größeres ändern...
Orbiter
 
Beiträge: 5792
Registriert: Di Jun 26, 2007 10:58 pm
Wohnort: Frankfurt am Main

Re: Blacklist

Beitragvon gaston » Di Sep 04, 2012 6:19 pm

Also das stimmt nicht ganz, weil dieser Regex funktioniert ...

(?i)(?:web)?(?:count(?:ers)?(?:\d+)?)\..*/.*

Aber teilweise muss man auch komische Konstrukte bauen wie das hier mit .*.* am Anfang damit es funktioniert.

.*.*/(?i)(?:news)?ticker(?:/)?$

Wieso kann man nicht einfach zwischen ein Regex (für host und path zuständig) und "normalen" Einträgen unterscheiden?

Normaler Eintag heißt, komplett ohne Regex oder nur path als Regex.
gaston
 
Beiträge: 143
Registriert: Fr Jan 06, 2012 2:22 pm


Zurück zu Fragen und Antworten

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot] und 1 Gast