YaCy Vergleichs-Suche Suchmaschinen entfernen?

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.

YaCy Vergleichs-Suche Suchmaschinen entfernen?

Beitragvon ubuntu » Mi Dez 10, 2008 4:41 pm

Hallo, ist es irgendwie machbar Suchmaschinen innerhalb der YaCy Vergleichs-Suche zu entfernen oder gegebenenfalls eigene hinzuzufügen?
ubuntu
 
Beiträge: 12
Registriert: Mo Aug 11, 2008 4:05 pm

Re: YaCy Vergleichs-Suche Suchmaschinen entfernen?

Beitragvon Low012 » Mi Dez 10, 2008 10:38 pm

Das ist relativ einfach machbar, wennn man nicht davor zurückschreckt, YaCy (bzw. eine Klasse) neu zu kompilieren. Im YaCy-Verzeichnis befindet sich ein Unterverzeichnis namens htroot, in dem die Datei compare_yacy.java zu finden ist.

In dieser Datei gibt es zwei Stellen, die geändert werden müssen. Hier ist die erste:
Code: Alles auswählen
    static {
        searchengines.put(defaultsearch, "yacysearch.html?display=2&verify=true&resource=global&query=");
        searchengines.put("YaCy (local)", "yacysearch.html?display=2&verify=true&resource=local&query=");
        searchengines.put("google.de", "http://www.google.de/search?q=");
        searchengines.put("google.com", "http://www.google.com/search?q=");
        searchengines.put("scroogle.org", "http://www.scroogle.org/cgi-bin/nbbw.cgi?Gw=");
        searchengines.put("metager.de", "http://www.metager.de/meta/cgi-bin/meta.ger1?eingabe=");
        searchengines.put("metager2.de (web)", "http://www.metager2.de/search.php?ses=web&q=");
        searchengines.put("metager2.de (international)", "http://www.metager2.de/search.php?ses=international&q=");
        searchengines.put("yahoo.com", "http://search.yahoo.com/search?p=");
        searchengines.put("romso.de", "http://romso.de/?q=");
        searchengines.put("search.live.com", "http://search.live.com/results.aspx?q=");
        searchengines.put("Wikipedia English", "http://en.wikipedia.org/wiki/");
        searchengines.put("Wikipedia Deutsch", "http://de.wikipedia.org/wiki/");
        searchengines.put("Sciencenet", "http://sciencenet.fzk.de:8080/yacysearch.html?display=2&verify=true&resource=global&query=");
    }

Hier können entsprechend den schon vorhandenen Einträgen beliebige neue Einträge hinzugefügt oder gelöscht werden. Der erste Teil vor dem Komma ist der Name der Suchmaschine, so wie er in YaCy angezeigt wird. Der zweite Teil besteht aus der Adresse für eine Suchanfrage, wobei darauf zu achten ist, dass die Adresse so geschrieben sein muss, dass daran einfach das Suchwort angefügt werden kann.

Die zweite Stelle ist ein paar Zeilen weiter oben:
Code: Alles auswählen
private static final String[] order = {defaultsearch, "YaCy (local)", "google.de", "google.com", "scroogle.org", "metager.de", "metager2.de (web)", "metager2.de (international)", "yahoo.com", "romso.de", "search.live.com", "Wikipedia English", "Wikipedia Deutsch", "Sciencenet"};

Dort muss der Name der Suchmaschine (exakt wie an der anderen Stelle geschrieben) an der Stelle eingetragen werden, an der er auch später in YaCy erscheinen soll. Wurden Suchmachinen entfernt, so muss auch hier der Name entfernt werden, sonst gibt es einen Fehler.

Nun muss nur noch die Klasse neu kompiliert werden. Eigentlich ist das alles nicht schwer, wenn man weiß, wie man Javacode kompiliert. Es wäre auch denkbar, die Vergleichssuche umzubauen, so dass die Suchmaschinen aus einer Konfigurationsdatei gelesen werden. Ich weiß aber nicht, ob das den Aufwand lohnt, weil ich nicht weiß, wieviele Leute dort etwas ändern würden.
Low012
 
Beiträge: 2214
Registriert: Mi Jun 27, 2007 12:11 pm

Re: YaCy Vergleichs-Suche Suchmaschinen entfernen?

Beitragvon tara » Do Dez 11, 2008 12:00 am

Beim nächsten Update, überschreibe ich mir doch das ganze wieder, oder?

Ich fände es besser, wenn man das selbst in einer Konfigurationsdatei ändern könnte. Eine einfach Textdatei (wie bei der Blacklist) reicht doch aus.

Und das dann evtl. auch für mehrere Sprachen handhabbar machen. Vielleicht könnte man das so gestalten, dass Nutzer nur die internationale Version der Sumas und die ihrer Landessprache per default in der Liste sehen. Bsp: Mit einem französischen Webinterface und/oder fr-fr als Browserdefaultsprache, wird google.fr statt google.de angezeigt. Die Ergebnisse unterscheiden sich da nämlich unter Umständen - selbst mit einer IP aus .de . Bei Metasuchmaschinen macht das teilweise ebenfalls einen Unterschied, welche Sprache ich da auswähle. Das gleiche gilt natürlich für die Wikipedia. Einen Spanier interessiert die de.wikipedia meist nicht so sehr.

Vielleicht könnte man über so eine Textdatei auch die "default" Vergleichssuchmaschine einstellen. Sprich, das was in der ersten Zeile steht wird normalerweise zum vergleichen gewählt. Ggf. kann man dann auch dadrüber die opensearchdescription anpassen. Da steht zur Zeit immer google drin. Das kann man zwar auch wieder manuell anpassen, aber über einen default Wert, wäre es doch etwas komfortabler.
tara
 
Beiträge: 41
Registriert: Fr Jan 11, 2008 8:43 pm


Zurück zu Fragen und Antworten

Wer ist online?

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