Zeichensatz API yacysearch.rss

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.

Zeichensatz API yacysearch.rss

Beitragvon Lilirasa » Fr Feb 20, 2009 8:46 pm

hi,
Versuche gerade mit aus yacysearch.rss und meinen etwas leidigen :oops: PHP-Kenntnissen ein Linktipp-Skript zu basteln.
Soweit habe ich auch alles hingekriegt, nur die Sonderzeichen werden nicht richtig dargestellt.

Auch bei einem direktaufruf von [url]http://85.25.147.200:8080/yacysearch.rss?display=0&query=käse&Enter=Search&former=&verify=false&contentdom=text&maximumRecords=10&startRecord=0&resource=global&urlmaskfilter=.*&prefermaskfilter=&indexof=off[/url] mit Firefox 3.0.6 werden die Sonderzeichen nicht korrekt dargestellt.

Daher gehe ich mal ganz frech davon aus, dass nicht meine PHP Kenntnisse daran schuld sind, sondern yacysearch.rss einen etwas exotischen Zeichensatz verwendet. Nur welchen? UTF-8 oder ISO 8859-1 scheint es jedenfalls nicht zu sein...
Lilirasa
 
Beiträge: 71
Registriert: So Sep 14, 2008 11:28 am

Re: Zeichensatz API yacysearch.rss

Beitragvon Orbiter » Sa Feb 21, 2009 12:28 am

wir haben jetzt intern überall utf-8. Das steht auch im Header des yacysearch.rss

Hab mal dein rss-Output in Safari aufgrufen, das macht dann im Apple Mail auf und sieht so aus:
rss.tiff
rss.tiff (81.09 KiB) 956-mal betrachtet

alle Umlaute da!
Orbiter
 
Beiträge: 5797
Registriert: Di Jun 26, 2007 10:58 pm
Wohnort: Frankfurt am Main

Re: Zeichensatz API yacysearch.rss

Beitragvon Lotus » Sa Feb 21, 2009 10:11 am

Es kann auch sein, dass die PHP-Seite im falschen Zeichensatz versucht wird darzustellen.
Lotus
 
Beiträge: 1699
Registriert: Mi Jun 27, 2007 3:33 pm
Wohnort: Hamburg

Re: Zeichensatz API yacysearch.rss

Beitragvon Lilirasa » Sa Feb 21, 2009 2:40 pm

Danke für die Antworten.

Da ich die Ausgabe des PHP-Skript in ISO 8859-1 konvertiere ich den Zeichensatz mittels utf8-decode (). Der Fehler tritt aber auch auf, wenn ich in der Headerinformation UTF-8 als Zeichensatz angebe und die Ausgabe von yacysearch.rss nicht in ISO konvertiere. Richtig merkwürdig ist, das Sonderzeichen im einem Treffer manchmal korrekt angezeigt werden im nächsten wieder nicht?!

Hier kann man sich die Ausgabe des Skripts ansehen: http://webkatalog.lilirasa.com/linktipp/links.php

Grüsse
Lilirasa
 
Beiträge: 71
Registriert: So Sep 14, 2008 11:28 am

Re: Zeichensatz API yacysearch.rss

Beitragvon Low012 » Sa Feb 21, 2009 5:01 pm

Ich weiß nicht, ob es was bringt, das zu ändern, aber das hier sieht für mich etwas merkwürdig aus:
Code: Alles auswählen
<meta http-equiv=”Content-Type” content=”text/html; charset=iso-8859-1? />
Soll das Fragezeichen da kurz vor Ende des Tags wirklich sein?
Low012
 
Beiträge: 2214
Registriert: Mi Jun 27, 2007 12:11 pm

Re: Zeichensatz API yacysearch.rss

Beitragvon Lilirasa » So Feb 22, 2009 6:01 pm

Low012 hat geschrieben:Ich weiß nicht, ob es was bringt, das zu ändern, aber das hier sieht für mich etwas merkwürdig aus:
Code: Alles auswählen
<meta http-equiv=”Content-Type” content=”text/html; charset=iso-8859-1? />
Soll das Fragezeichen da kurz vor Ende des Tags wirklich sein?


Nein, das kommt davon, wenn man solche Dinge einfach per Copy&Paste übernimmt. :-)
Hat allerdings keinen grossen Effekt.

Kann es sein, das dieses Problem mit Sonderzeichen innerhalb der Übergabevariablen an yacysearch zusammenhängt?

z.b.
http://lilirasa.webhop.net:8080/yacysea ... =0&query=käse&Enter=Search&former=&verify=false&contentdom=text&maximumRecords=10&startRecord=0&resource=global&urlmaskfilter=.*&prefermaskfilter=&indexof=off

Müsste hier vielleicht bei Query das ä irgendwie speziell codiert sein? Wenn ja wie?
Wenn ich Käse durch Kaese ersetze, funktioniert die ganze Geschichte. Nur werden dann auch andere Ergebnisse geliefert. Yacy scheint hier zwischen ä und ae zu unterscheiden, obwohl auch(wenige) Treffer mit Käse zu sehen sind. Desshalb würde ich eine bessere Lösung bevorzugen.

Grüsse
Lilirasa
 
Beiträge: 71
Registriert: So Sep 14, 2008 11:28 am

Re: Zeichensatz API yacysearch.rss

Beitragvon Lotus » So Feb 22, 2009 6:24 pm

Lilirasa hat geschrieben:Müsste hier vielleicht bei Query das ä irgendwie speziell codiert sein? Wenn ja wie?

Die Funktion urlencode macht in PHP Sonderzeichen im Link möglich.
Lotus
 
Beiträge: 1699
Registriert: Mi Jun 27, 2007 3:33 pm
Wohnort: Hamburg

Re: Zeichensatz API yacysearch.rss

Beitragvon Orbiter » So Feb 22, 2009 6:27 pm

dass du bei kaese Ergebnisse bekommst, liegt daran dass YaCy bis vor 0.70 Umlaute durch Umschriften ersetzt hat, und diese nun noch im Index findet.
Ansonsten wüsste ich nicht was an der Übergabe des Parameters falsch sein kann, bzw. wie dies das Ergebnis beeinflussen kann, denn das ist immer UTF-8.
Orbiter
 
Beiträge: 5797
Registriert: Di Jun 26, 2007 10:58 pm
Wohnort: Frankfurt am Main

Re: Zeichensatz API yacysearch.rss

Beitragvon thq » So Feb 22, 2009 7:01 pm

Lilirasa hat geschrieben:... obwohl auch(wenige) Treffer mit Käse zu sehen sind
Was heißt den bei dir wenige Treffer, also wenn ich nach "Käse" suche sehe ich das
Code: Alles auswählen
total number of 60,146 known (7,040 local, 53,106 remote), 106 links from 11 other YaCy peers
thq
 
Beiträge: 651
Registriert: So Jul 08, 2007 12:23 pm

Re: Zeichensatz API yacysearch.rss

Beitragvon Lilirasa » So Feb 22, 2009 7:53 pm

Mit urlencode kodierten suchwörten scheint YACY nicht klarzukommen:

Code: Alles auswählen
$suche='käse';
$query='http://lilirasa.webhop.net:8080/yacysearch.rss?display=0&query='.urlencode($suche).'&Enter=Search&former=&verify=false&contentdom=text&maximumRecords=10&startRecord=0&resource=global&urlmaskfilter=.*&prefermaskfilter=&indexof=off';


Ergibt:
http://lilirasa.webhop.net:8080/yacysearch.rss?display=0&query=k%E4se&Enter=Search&former=&verify=false&contentdom=text&maximumRecords=10&startRecord=0&resource=global&urlmaskfilter=.*&prefermaskfilter=&indexof=off

Ausgabe mit Firefox 3.0.6 ergibt:
rssausgabe.jpg
rssausgabe.jpg (83.92 KiB) 753-mal betrachtet


Ausgabe des PHP-Skripts:
http://webkatalog.lilirasa.com/linktipp/links.php

Auch bei Thunderbird und IE funtioniert weder query=Käse oder query=k%E4se...

Zeichensätze sind ein Fluch... :evil:

@thq
Iyacysearch.rss liefert nur 10 Treffer (-> maximumRecords=10). Davon sind bei query=kaese nur wenige Treffer welche Käse mit ä geschrieben wird.

Grüsse
Lilirasa
 
Beiträge: 71
Registriert: So Sep 14, 2008 11:28 am

Re: Zeichensatz API yacysearch.rss

Beitragvon flori » So Feb 22, 2009 9:13 pm



Das ä im URL ist in ISO-irgendwas kodiert. Das erkennt man daran, das es nur aus einem Byte besteht. UTF-8 kodierte Umlaut bestehen immer aus zwei Bytes. Vielleicht hilft dir das beim Debuggen.

Folglich müsste man auf deinem ISO-System urlencode(utf8_encode($string)) schreiben.

PS: Bei mir macht der RSS-Feed deines Peers im Firefox keine Probleme.
flori
 
Beiträge: 245
Registriert: Mi Jun 27, 2007 10:17 pm
Wohnort: Karlsruhe

Re: Zeichensatz API yacysearch.rss

Beitragvon Lilirasa » So Feb 22, 2009 10:02 pm

Danke Flori! War schon fast am Verzweifeln... Jetzt gehts!
Lilirasa
 
Beiträge: 71
Registriert: So Sep 14, 2008 11:28 am

Re: Zeichensatz API yacysearch.rss

Beitragvon Lilirasa » So Mär 01, 2009 3:10 pm

So, das Skript ist jetzt hier -> http://webkatalog.lilirasa.com/kategorien.php?rubrik=Arbeit-und-Beruf&kategorie=Online-Jobboersen im Produktiveinsatz. :-)

Danke an alle die geholfen haben!

Grüsse
Andi
Lilirasa
 
Beiträge: 71
Registriert: So Sep 14, 2008 11:28 am


Zurück zu Fragen und Antworten

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot] und 2 Gäste