Blacklist entries .*string.*/.*

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 entries .*string.*/.*

Beitragvon liebel-lab » Mo Dez 22, 2008 9:34 am

mir faellt gerade auf , dass beim setzen des Filters ".*Talk.*" (fuer die wikipedia) yacy automatisch
".*Talk.*/.*" generiert. damit ist der filte rnicht mehr wirksam da es ein "/" in der wikipedia nach "Talk" nicht gibt...
(nachtraegliches edit scheint auch widerstand zu leisten )
feature? :-)
liebel-lab
 
Beiträge: 175
Registriert: Sa Jan 26, 2008 7:00 pm

Re: Blacklist entries .*string.*/.*

Beitragvon Low012 » Mo Dez 22, 2008 10:41 am

Ich hatte mir die Blacklists vor einiger Zeit mal angesehen und wenn ich mich richtig erinnere, ist das ein Feature, weil ursprünglich in den Blacklisten gar keine normalen regulären Ausdrücke möglich waren, sondern immer erst die Domain gefolgt von einem regulären Ausadruck möglich war. Später gab es dann eine altenative Blacklistengine (von lulabad?) und noch später wurden dann beide zu einer verschmolzen. Leider scheint sich diese Verschmelzung nicht in der gesamten Blacklistverwaltung widerzuspiegeln. So werden reguläre Ausdrücke auch teilweise im Blacklist-Cleaner als illegal angesehen, obwohl sie wunderbar funktionieren. Bei den Blacklisten gibt es noch allerhand zu verbessern, aber man muss auch aufpassen, dass man nichts verschlimmbessert. Schnell mal was zu Ändern kann da auch mal schief gehen...

Ich bin, bevor ich mich weiter reinwühle, derzeit dabei, den Im- und Export zu verbessern und habe noch ein paar Änderungen an der Oberfläche geplant, um die Blacklistverwaltung einfacher zu machen. Das kommt alles aber leider nur im Schneckentempo voran. :(

Ich kann es leider grad nicht ausprobieren, aber vielleicht hilft es ja in deinem Fall, den reguläeren Ausdruck etwas abzuändern, so dass ein Slash drin vorkommt. Ginge zum Beispiel ".*/Talk.*" oder "*.wikipedia.org/wiki/Talk:.*"?

edit: Du könntest es noch ganz brachial probieren und bei ausgeschaltetem YaCy die Blacklist von Hand editieren. Die Blacklisten befinden sich in DATA/LISTS und sind ganz normale Textdateien mit einem Eintrag pro Zeile. Ob danach noch alles funktioniert wie es soll, dafür übernehme ich aber keine Haftung! ;)
Low012
 
Beiträge: 2214
Registriert: Mi Jun 27, 2007 12:11 pm

Re: Blacklist entries .*string.*/.*

Beitragvon Icebreeze » So Feb 01, 2009 7:47 pm

Hi Low012

Ich stehe vor einem ähnlichen Problem und auch so etwas wie

Low012 hat geschrieben:edit: Du könntest es noch ganz brachial probieren und bei ausgeschaltetem YaCy die Blacklist von Hand editieren. Die Blacklisten befinden sich in DATA/LISTS und sind ganz normale Textdateien mit einem Eintrag pro Zeile. Ob danach noch alles funktioniert wie es soll, dafür übernehme ich aber keine Haftung! ;)


funktioniert leider auch nicht.

Zum Problem... Ich crawle etliche Foren und darin kommen Links zu Seiten wie:
http://www.example.tld/forum/newthread.php?do=newthread&f=123
http://www.example.tld/forum/member.php?u=1234

vor, also Dinge die nicht gecrawlt werden müssen. Als Unregistrierter kloppt es einem in der Regel eine Fehlermeldung an den Hals wenn man neue Threads erstellen möchte, oder auf bestehende anworten, oder Profile von Membern sehen oder oder.

Das Problem dabei... Es schluckt enorm Bandbreite (Jede Seite wird je nach Forensoftware mindestens 3-4 Mal gecrawlt, auch schon wenn man als Unregistrierter dort crawlt (http://www.example.tld/forum/showpost.php?p=12345&postcount=1 zeigt einzelne Beiträge an) und die Datenbank füllt sich unnötig, was sich dann wieder auf die Gesamtperformance niederschlägt.

Einträge in der Blacklist (brutal mit dem Texteditor geändert ;) ) in der Form
Blacklistbeispiel hat geschrieben: */newthread.php?do=newthread*
*do=newreply*
*find=lastposter*
*member.php?u=*
*postcount=*


führen auch nicht zum Erfolg.

Die jetztige Form der verwendeten Regex *.blabla*.* deckt obiges Problem imho nicht ab. Ohne zu nörgeln oder zu drängen, aber den jetztigen Zustand halte ich für ein grosses (Performance)Problem und wäre froh wenn es bald eine Lösung dazu geben würde.

rgds
IceBreeze
Icebreeze
 
Beiträge: 30
Registriert: Do Okt 16, 2008 6:37 pm

Re: Blacklist entries .*string.*/.*

Beitragvon Lotus » Mo Feb 02, 2009 12:16 pm

@Icebreeze
Das funktioniert nicht, weil in Regex .* für jedes Zeichen beliebig oft steht. Konkret wäre es bei deiner Liste also nötig jedes * durch .* zu ersetzen.
Lotus
 
Beiträge: 1699
Registriert: Mi Jun 27, 2007 3:33 pm
Wohnort: Hamburg

Re: Blacklist entries .*string.*/.*

Beitragvon Icebreeze » Mo Feb 02, 2009 5:58 pm

Hi Lotus

Lotus hat geschrieben:@Icebreeze
Das funktioniert nicht, weil in Regex .* für jedes Zeichen beliebig oft steht. Konkret wäre es bei deiner Liste also nötig jedes * durch .* zu ersetzen.


Hm, mea culpa... Finger schneller wie Hirn :oops:

Ich hab mal von der betreffenden Blacklist einen Schnappschuss gemacht:

yacy_blacklist_check.jpg
yacy_blacklist_check.jpg (145.18 KiB) 581-mal betrachtet


Keine der Varianten führt zum Erfolg.

Falls "Host enthält ungültige Zeichen" sich nur wirklich auf den Host bezieht (http://www.example.tld/) und alles hintendran (sample.php?do=whatever) eh ignoriert dann würden alle Versuche nach forenspezifischen Erkennungsmerkmalen mit der Blacklist scheitern.

Etwas im Sinne wie "*..**.whatever.*" ginge wohl nicht oder einfacher gefragt, warum (so erscheint mir) wird nur der Host untersucht:
sample.tld/ geht *.sample.*
sam2.tld/sample geht nicht

Es wird sicher seine Gründe haben das es so gelöst ist wie es ist, aber siehe oben, es bereitet im Falle von Foren nur Probleme (sofern ich das mit der RegEX richtig verstanden habe :) )

rgds
IceBreeze

rgds
IceBreeze
Icebreeze
 
Beiträge: 30
Registriert: Do Okt 16, 2008 6:37 pm

Re: Blacklist entries .*string.*/.*

Beitragvon Lotus » Mo Feb 02, 2009 7:19 pm

Eintrag 1 wäre sollte wohl .*do=newreply.* heißen damit er wie erwartet funktioniert.
. steht in Regex für jedes Zeichen
* steht für vorheriges 0 oder mehrmals (entspricht "egal")
Um einen . zu finden muss dieser mir vorstehendem \ escaped werden. Das wäre dann: \.

Alle Möglichkeiten in Java stehen hier: http://java.sun.com/j2se/1.5.0/docs/api ... ttern.html
Lotus
 
Beiträge: 1699
Registriert: Mi Jun 27, 2007 3:33 pm
Wohnort: Hamburg


Zurück zu Fragen und Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste