Frage zu "Must-Not-Match" Filter

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.

Frage zu "Must-Not-Match" Filter

Beitragvon wsb » Di Mai 31, 2011 11:45 am

Wenn ich mit dem "Must-Not-Match" Filter verschiedene Patterns mit OR-Verknüpfung von Crawlen ausschließen will, dachte ich mir, dass das mit dem | geht, also z.B. so:

    .*/dies/.*|.*/das/.*
Beide Pfade sollen nicht gecrawlt werden - aber das funzt ganz offenbar nicht. Hat jmd. eine Idee?
wsb
 
Beiträge: 201
Registriert: Mi Jun 27, 2007 2:53 pm

Re: Frage zu "Must-Not-Match" Filter

Beitragvon Low012 » Di Mai 31, 2011 12:45 pm

Ich glaube, da fehlen einfach nur ein paar Klammern: (.*/dies/.*)|(.*/das/.*)

(Ich kann es aber im Augenblick nicht testen.)
Low012
 
Beiträge: 2214
Registriert: Mi Jun 27, 2007 12:11 pm

Re: Frage zu "Must-Not-Match" Filter

Beitragvon wsb » Di Mai 31, 2011 12:56 pm

Low012 hat geschrieben:Ich glaube, da fehlen einfach nur ein paar Klammern: (.*/dies/.*)|(.*/das/.*)
(Ich kann es aber im Augenblick nicht testen.)

Habs grad getestet: hilf nix.
wsb
 
Beiträge: 201
Registriert: Mi Jun 27, 2007 2:53 pm

Re: Frage zu "Must-Not-Match" Filter

Beitragvon wsb » Di Mai 31, 2011 2:01 pm

wsb hat geschrieben:
Low012 hat geschrieben:Ich glaube, da fehlen einfach nur ein paar Klammern: (.*/dies/.*)|(.*/das/.*)
(Ich kann es aber im Augenblick nicht testen.)

Habs grad getestet: hilf nix.

Habs nochmal getestet: wenn in den regex BUCHSTABEN stehen, geht es. Wenn Ziffern darin stehen, nicht. Hier die Zeile, um die es geht:
    (.*/2006/.*)|(.*/2007/.*)|(.*/2008/.*)|(.*/2009/.*)
WAS ist daran bloß falsch?

Wenn es nur EINE Zahl ist, dann geht es ebenfalls:
    .*/2007/.*
ist ok.
wsb
 
Beiträge: 201
Registriert: Mi Jun 27, 2007 2:53 pm

Re: Frage zu "Must-Not-Match" Filter

Beitragvon Low012 » Di Mai 31, 2011 3:09 pm

Einen offensichtlichen Fehler kann ich auch nicht entdecken. Ohne es mit YaCy getestet zu haben:

.*/(2006|2007|2008|2009)/.*

wäre eine Variante, die ich noch probieren würde oder eventuell

.*/(20[0-9]{2})/.*

(das würde dann auch gleich 2000 bis 2099 abdecken).
Low012
 
Beiträge: 2214
Registriert: Mi Jun 27, 2007 12:11 pm

Re: Frage zu "Must-Not-Match" Filter

Beitragvon wsb » Di Mai 31, 2011 4:34 pm

Low012 hat geschrieben:Einen offensichtlichen Fehler kann ich auch nicht entdecken. Ohne es mit YaCy getestet zu haben:
.*/(2006|2007|2008|2009)/.*
wäre eine Variante, die ich noch probieren würde.

Habs grad probiert: geht leider auch nicht.
wsb
 
Beiträge: 201
Registriert: Mi Jun 27, 2007 2:53 pm

Re: Frage zu "Must-Not-Match" Filter

Beitragvon PCA42 » Di Mai 31, 2011 5:05 pm

Hab mich mal fix belesen. (.*\/2008\/.*)|(.*\/2009\/.*) sollte funktionieren. Der "/" innerhalb des Suchausdrucks muss maskiert werden.
PCA42
 
Beiträge: 621
Registriert: Mi Jan 23, 2008 4:19 pm
Wohnort: @Home

Re: Frage zu "Must-Not-Match" Filter

Beitragvon wsb » Di Mai 31, 2011 5:19 pm

PCA42 hat geschrieben:Hab mich mal fix belesen. (.*\/2008\/.*)|(.*\/2009\/.*) sollte funktionieren. Der "/" innerhalb des Suchausdrucks muss maskiert werden.

Danke erstmal für all eure Mühe ... und dieser Vorschlag hier war so einleuchtend schön ... aber leider funzt auch der nicht. Hier der regex, den ich jetzt versucht habe:
    (.*\/2006\/.*)|(.*\/2007\/.*)|(.*\/2008\/.*)|(.*\/2009\/.*)
wsb
 
Beiträge: 201
Registriert: Mi Jun 27, 2007 2:53 pm

Re: Frage zu "Must-Not-Match" Filter

Beitragvon Lotus » Di Mai 31, 2011 5:36 pm

Wie wäre es mit doppelt maskieren: \\ statt \

Toll wäre es, wenn alle Regex Eingaben das automatisch erhalten (es gibt einige davon in YaCy). Die doppelte Maskierung ist ja speziell Java-Spezifisch.
Lotus
 
Beiträge: 1699
Registriert: Mi Jun 27, 2007 3:33 pm
Wohnort: Hamburg

Re: Frage zu "Must-Not-Match" Filter

Beitragvon wsb » Mi Jun 01, 2011 5:35 am

Lotus hat geschrieben:Wie wäre es mit doppelt maskieren: \\ statt \

Toll wäre es, wenn alle Regex Eingaben das automatisch erhalten (es gibt einige davon in YaCy). Die doppelte Maskierung ist ja speziell Java-Spezifisch.


Hilft leider auch nicht, ebenso hilft \\\ nix. Das Seltsame ist ja auch, wenn es nur Buchstaben sind, also sowas:
    (.*/dies/.*)|(.*/das/.*)
dann gehts; genaus gehts, wenn es nur EINE Zahl ist, also dieses:
    .*/2007/.*
Also kann es an der Formulierung des regex eigentlich nicht liegen. Mir sieht's eher nach nem Bug aus.
wsb
 
Beiträge: 201
Registriert: Mi Jun 27, 2007 2:53 pm

Re: Frage zu "Must-Not-Match" Filter

Beitragvon wsb » Mi Jun 01, 2011 8:12 am

wsb hat geschrieben:Also kann es an der Formulierung des regex eigentlich nicht liegen. Mir sieht's eher nach nem Bug aus.

Nächster Test:
Wenn ich in den "Must-Not-Match" Filter reinschreiben .* dann dürfte folglich NICHTS gecrawlt werden. Nichtsdestotrotz zieht der Crawler fröhlich los und ignoriert das. Also:
Definitiv ein Bug.

STOP: ich glaub, ICH hab hier einen argen Fehler gemacht: ich hab nach dem Crawler-Start immer auf die Seite Crawler_p.html geschaut. DORT werden auch die Webseiten anzeigt, die das Must-Not-Match" Filter rausschmeissen muss. Da die auf der Seite Crawler_p.html aber angezeigt werden, dacht ich, die werden nicht rausgeschmissen - das werden sie aber wohl doch, denn im Logfile steht dann "Rejected URL ... does not match must-match filter". Also wohl offenbar blinder Alarm und mein Fehler? Mal sehen, ob die fraglichen Seiten hinterher im Index erscheinen ...

ABER nun kommt der Hammer: OBWOHL im Log steht, dass die Seiten wg. des "Must-Not-Match" Filters rejected werden, sind sie trotzdem im Index :-(

Ich habs auch nochmal für Filterausdrücke getestet, die nur Buchstaben (keine Ziffern) enthalten: das funktioniert (entgegen meiner obigen Ausage) auch nicht.

Also wohl doch ein Bug?
wsb
 
Beiträge: 201
Registriert: Mi Jun 27, 2007 2:53 pm

Re: Frage zu "Must-Not-Match" Filter

Beitragvon Orbiter » Mi Jun 01, 2011 10:23 am

hab das gerade ausprobiert (an http://www.uni-kl.de/ )
bei must-not-match:.* wird hierbei die Start-URL geladen und indexiert, aber _keine_ Folgeseiten. Das ist aus meiner Sicht richtig so, denn die Start-URL gilt aus meiner Sicht als 'manuelle' URL und hier ist es ja auch notwendig einen Double-Check auf die Start-URL auszusetzen wenn man einen Re-Crawl vornehmen will.
Orbiter
 
Beiträge: 5792
Registriert: Di Jun 26, 2007 10:58 pm
Wohnort: Frankfurt am Main

Re: Frage zu "Must-Not-Match" Filter

Beitragvon wsb » Mi Jun 01, 2011 11:27 am

Orbiter hat geschrieben:hab das gerade ausprobiert (an http://www.uni-kl.de/ )
bei must-not-match:.* wird hierbei die Start-URL geladen und indexiert, aber _keine_ Folgeseiten. Das ist aus meiner Sicht richtig so, denn die Start-URL gilt aus meiner Sicht als 'manuelle' URL und hier ist es ja auch notwendig einen Double-Check auf die Start-URL auszusetzen wenn man einen Re-Crawl vornehmen will.


Das wird ja gut und richtig sein, aber WIE kriege ich es hin, dass bestimmte Pfade, wie .*/2007/.* NICHT gecrawelt/indexiert werden??
wsb
 
Beiträge: 201
Registriert: Mi Jun 27, 2007 2:53 pm

Re: Frage zu "Must-Not-Match" Filter

Beitragvon Orbiter » Mi Jun 01, 2011 11:39 am

.*/(2007|2008)/.* mit http://myregexp.com/ gecheckt
Orbiter
 
Beiträge: 5792
Registriert: Di Jun 26, 2007 10:58 pm
Wohnort: Frankfurt am Main

Re: Frage zu "Must-Not-Match" Filter

Beitragvon wsb » Mi Jun 01, 2011 12:43 pm

Orbiter hat geschrieben:.*/(2007|2008)/.* mit http://myregexp.com/ gecheckt

Nunja, und genau das funktioniert halt in yacy nicht (egal was myregexp.com dazu sagt).
wsb
 
Beiträge: 201
Registriert: Mi Jun 27, 2007 2:53 pm


Zurück zu Fragen und Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast