Wechselkursfilter

Wechselkursfilter selbst erstellen

Sie können nahezu von jeder Webseite, die Wechselkurse anbietet, Kurse in das NumericalChameleon übernehmen. Damit Kurse eindeutig identifiziert werden können, muß die Webseite neben den Wechselkursen entsprechende ISO-4217-Codes angeben (z. B. USD, EUR, usw.). Dabei ist es nicht von Bedeutung, ob die ISO-Codes in der HTML-Seite sichtbar sind, sie müssen nur im Sourcecode der HTML-Seite auftauchen, schon das Vorhandensein in einem Link reicht aus.

Die ISO-Codes sind in der der Datei "<Installationsverzeichnis>/data/lists/iso4217.list" definiert. Sie können Einträge in dieser Datei löschen, um nur die von Ihnen bevorzugten Wechselkurse zu berücksichtigen und damit auch u. U. das Parsing zu beschleunigen. Wechselkursfilter werden im Verzeichnis "<Installationsverzeichnis>/data/rates/" gespeichert und tragen die Endung ".filter".

Beispiel

Beispiel für die Konfigurationsdatei für die Webseite des "Pacific Exchange Rate Services"
(<installationsverzeichnis>/data/rates/fx.sauder.ubc.ca.filter)

 name=Pacific Exchange Rate Service
visit=http://fx.sauder.ubc.ca/supplement.html
version=20180714
country=ca

description=\
Service from the University of British Columbia\n\
Sauder School of Business\n\n\
This service provides 112 exchange rates\n\
(47 unique).

description_de=\
Service von der University of British Columbia\n\
Sauder School of Business\n\n\
Dieser Service unterstützt 112 Wechselkurse (davon sind\n\
47 eindeutig).

instruction=\
Visit the website above. Respect the "Terms of Use"\n\
at the webpage. Save the webpage to a file and\n\
go to step 3.\n\
\n\
IMPORTANT: If you use the Internet Explorer (IE), select\n\
the option "Save as type: Web Page, HTML only" at the\n
dialog called "Save Web Page", otherwise the IE rewrites\n\
(destroys) the original HTML of the exchange rate provider\n\
and this filter doesn't work anymore!

instruction_de=\
Besuchen Sie obige Webseite. Respektieren Sie die\n\
Nutzungsbedingungen auf der Webseite. Speichern Sie die\n\
Webseite als Datei ab und gehen Sie zu Schritt 3.\n\
\n\
WICHTIG: Wenn Sie den Internet Explorer (IE) verwenden,\n\
wählen Sie beim Dialog "Webseite speichern" den Dateityp\n\
"Webseite, nur HTML". Wenn Sie "Webseite, komplett" wählen,\n\
zerstört der IE das HTML-Originalformat des Wechselkurs-\n\
anbieters und dieser Filter funktioniert dann nicht mehr.

date=<title>Today's FX Rates Supplement for ([^<]+)</title>
before_iso=<tt>
after_iso=</tt></td>\
\\s*<td[^>]+>[^<]+</td>\
\\s*<td[^>]+>([\\d\\.]+)[^<]*</td>
valuepos=1
decimalSeparator=,
decimalPoint=.
filechooser=htm,html
base=CAD
directDownload=true
user-agent=random
            

Beschreibung aller gültigen Schlüsselworte 

Schlüsselwort Auswirkung Seit NC Beschreibung
enabled Funktion 2.0.0 Optional; legt fest, ob der Wechselkursfilter aktiv ist oder nicht (true oder false), wenn der Schlüssel fehlt, ist der Filter aktiv
name Anzeige 1.2.0 Der Name des Wechselkursservice
country Anzeige 2.0.0 Das Land in dem der Wechselkursservice zu Hause ist
visit Filter 1.2.0 Die URL des Wechselkursservice
visit.additional Filter 2.0.0 Wie viele zusätzliche Adressen sind vorhanden?
visit.<number> Filter 2.0.0 Eine zusätzliche Adresse des Wechselkursservices
description Anzeige 1.2.0 Eine Beschreibung des Wechselkursservices in Englisch; wird verwendet, wenn kein passender description_<language> Eintrag gefunden wird
description_<language> Anzeige 2.0.0 Wie description, aber lokalisiert, <language> muß dabei ein zweistelliger Ländercode nach ISO 3166 sein, also z. B. "de" für Deutsch
instruction Anzeige 1.2.0 Eine kurze Beschreibung, was auf der Seite des Wechselkursservice gemacht werden soll; wird verwendet, wenn kein passender instruction_<language> Eintrag gefunden wird
instruction_<language> Anzeige 2.0.0 Wie instruction, aber lokalisiert, <language> muß dabei ein zweistelliger Ländercode nach ISO 3166 sein, also z. B. "de" für Deutsch
date Filter 1.2.0 Von wann sind die Wechselkurse, eine Klammerung definiert die Zeichenkette. Bei date=today wird der aktuelle Tag verwendet. Das kann sinnvoll sein, wenn die Webseite überhaupt keinen Tag angiebt, von wann die Wechselkurse sind.
before_iso Filter 1.2.0 Regulärer Ausdruck vor dem ISO 4217-Code, Klammerungen sind zulässig
before_iso_inv Filter 1.5.0 Optional; regulärer Ausdruck vor dem ISO 4217-Code, Klammerungen sind zulässig (Kurs wird neu berechnet mit 1/Kurs)
after_iso Filter 1.2.0 Regulärer Ausdruck nach dem ISO 4217-Code, Klammerungen sind zulässig
after_iso_inv Filter 1.5.0 Optional; regulärer Ausdruck nach dem ISO 4217-Code, Klammerungen sind zulässig (Kurs wird neu berechnet mit 1/Kurs)
decimalSeparator Filter 1.2.0 Welches Zeichen dient als Trenner zwischen den Ziffern in der HTML-Seite (z. B. ",")?
decimalPoint Filter 1.2.0 Welches Zeichen dient als Dezimalpunkt in der HTML-Seite? (z. B. ".")
logic Filter 1.3.0 Optional; wird gesetzt für das Feld Logik der Kategorie Wechselkurse, default ist "false"
filechooser Anzeige 1.3.0 Optional; welche Dateiendungen sollen im Öffnen-Dialog gefiltert werden können? (z. B. "html, htm")
valuepos Filter 1.3.0 Optional; die wievielte Klammerung in der Zeichenkette "before_iso+ISO+after_iso" definiert den Wechselkurswert? Default ist "1"
base Filter 1.4.0 Optional; ein dreistelliger ISO 4217-Code, der mit Faktor 1.0 definiert wird (z. B. "USD")
factorpos Filter 2.0.0 Optional; die wievielte Klammerung in der Zeichenkette "before_iso+ISO+after_iso" definiert den Faktor der Werteeinheit? Verwenden Sie entweder factorpos oder factorForAll.
factorForAll Filter 2.0.0 Optional; der Faktor für alle Werteeinheiten (üblicherweise 1); der Wechselkurs ist der Preis in der Basiseinheit für factorForAll Einheiten der Fremdwährung.Verwenden Sie entweder factorpos oder factorForAll.
removeTags Filter 2.0.0 Optional; default=false; Der Wert (siehe valuepos)  kann HTML-Tags enthalten, bei "true" werden alle HTML-Tags entfernt (alles zwischen zpitzen Klammern)
removeWhitespaces Filter 2.0.1 Optional; default=false; Der Wert (siehe valuepos) kann Whitespaces enthalten, bei "true" werden alle Whitespaces entfernt (Blanks und Tabulatoren)
replaceCodes Filter 2.0.0 Optional; default=false; Der Wert (siehe valuepos) kann Zeichen in HTML-Code kodiert enthalten, bei "true" werden solche HTML-Codes in gültige Ziffern (0-9, e, E, +, -, Punkt und Komma) transformiert
removeCommentBeforeParsing Geschwindigkeit 2.0.0 Otional; default=false; Bei "true" werden alle HTML-Kommentare vor dem Parsen entfernt.
searchOnlyFor Geschwindigkeit 2.0.0 Optional; nur die durch Komma getrennte ISO-Codes werden gesucht. Dies kann die Geschwindigkeit erhöhen, mit der Wechselkurse aus einer Webseite herausgelesen werden, dies erhöht aber auch den Aufwand, einen Filter aktuell zu halten.
cutHead Geschwindigkeit 2.0.0 Optional; schneidet vom Anfang der Seite bis einschliesslich des Ende des Strings cutHead ab. Dies kann die Geschwindigkeit erhöhen, mit der Wechselkurse aus einer Webseite herausgelesen werden, weil weniger Inhalt geparst werden muss.
cutHead.count Geschwindigkeit 2.0.0 Optional; legt fest, wie oft cutHead durchgeführt wird
cutBottom Geschwindigkeit 2.0.0 Optional; schneidet ab Anfang des Strings cutBottom bis zum Ende der Seite ab. Dies kann die Geschwindigkeit erhöhen, mit der Wechselkurse aus einer Webseite herausgelesen werden, weil weniger Inhalt geparst werden muss.
directDownload Funktion 2.0.0 Optional; legt fest, ob ein direkter Download möglich ist. Standard ist false. Sollte nur auf true gesetzt werden, wenn keine Aktion seintens des Anwenders auf einer Webseite nötig ist.
user-agent Funktion 2.0.0 Optional; falls gesetzt, wird der user-agent als Parameter im HTTP-Header verwendet. Falls user-agent auf "random" gesetzt wird, wird zufallsmäßig ein User-Agent von drei im Netz weit verbreiteten Browsern verwendet.