This is the new home of the egghelp.org community forum.
All data has been migrated (including user logins/passwords) to a new phpBB version.


For more information, see this announcement post. Click the X in the top right-corner of this box to dismiss this message.

Weather script for wetter.com [German]

Support & discussion of released scripts, and announcements of new releases.
Post Reply
S
Sir_Cedric_Lex2
Voice
Posts: 3
Joined: Mon Jul 03, 2006 8:30 am

Post by Sir_Cedric_Lex2 »

Hi, ich bekomm derzeitg immer diesen Fehler:

[23:25] Tcl error [getwetter_msgcmd]: couldn't execute "lynx": no such file or directory

Hat von euch jemand das gleiche Problem? Hab die Version vom 14.07.06, ist also ganz aktuell. Der TCL fehler an sich ist ja schon bekannt, aber ich meine noch nicht in dieser form.

Vielen Dank
User avatar
De Kus
Revered One
Posts: 1361
Joined: Sun Dec 15, 2002 11:41 am
Location: Germany

Post by De Kus »

Das "Problem" liegt daran, dass ich beim Komprimieren diesmal nicht die Konfiguration geändert habe und du sie dir offensichtlich nicht durchgelesen hast :).
De Kus
StarZ|De_Kus, De_Kus or DeKus on IRC
Copyright © 2005-2009 by De Kus - published under The MIT License
Love hurts, love strengthens...
User avatar
Tsukasa
Voice
Posts: 6
Joined: Wed Jul 12, 2006 2:55 pm
Location: Dresden
Contact:

bug-fix

Post by Tsukasa »

hi De Kus,

ich hab mich mal ein wenig versucht in deinen Code einzuarbeiten und habe dabei einen Lösungsweg für das tolle Problem der falschen Auswahl der Suchergebnisse gefunden.

In den Zeilen

Code: Select all

        set i [string first {<ul class="Body">} $state(body)]
        set j [string first {</ul>} $state(body) $i]
        set links [string range $state(body) $i $j]
Wird ja die komplette Linkliste des Suchergebnisses zwischengespeichert. Wenn man direkt danach

Code: Select all

        set i [string first {<li>} $links]
        set j [string first {</li>} $links $i]
        set links [string range $links $i $j]
einfügt, wird die Liste auf den ersten Link reduziert und das Script arbeitet korrekt weiter.
Man kann dies bestimmt auch mit dem richtigen regulären Ausdruck erreichen, aber wozu schwer wenn es auch einfach geht.

ACHTUNG: das ganze funktioniert natürlich erst wenn der Cache geleert wurde, da dort in den meisten Fällen der Name mit der falschen Link-ID zwischengespeichert wurde.

Ich hoffe Du hast nichts dagegen, wenn ich mich in deinen Code "einmische"

Tsukasa
Fleiß kann man vortäuschen, faul muss man schon selber sein.
User avatar
De Kus
Revered One
Posts: 1361
Joined: Sun Dec 15, 2002 11:41 am
Location: Germany

Post by De Kus »

Nein, das ist schon okay. Ich hab das mal mit entsprechendem Kommentar als 0.12.10 eingebaut. Kann jeder gerne benutzen, aber dass ich nun soweit gehe und mir das mit neu hochladen un so an Arbeit mache geht dann doch für solche Sommertage zu weit :D.
De Kus
StarZ|De_Kus, De_Kus or DeKus on IRC
Copyright © 2005-2009 by De Kus - published under The MIT License
Love hurts, love strengthens...
H
Hazard
Voice
Posts: 18
Joined: Thu May 25, 2006 6:18 pm

Post by Hazard »

Danke Tsukasa so gehts wieder :)
User avatar
Tsukasa
Voice
Posts: 6
Joined: Wed Jul 12, 2006 2:55 pm
Location: Dresden
Contact:

Zeitanzeige

Post by Tsukasa »

Hi De Kus,

Dir ist ja sicherlich aufgefallen, dass wetter.com nicht immer die aktuellsten Daten hat. Daher wollte ich fragen, ob man nicht die Zeit der letzten Wetterdatenaktualisierung (die ja auch der gleichen Seite steht, wie alles andere) mit anzeigen lassen kann.
Bevor ich den Post fertig getippt hatte, dacht ich mir, warum ich sollt ich dich nerven und habs mal selbst umgesetzt. Um dies zu verwenden, muss man einfach nach

Code: Select all

            set himmel {}
            set temp {}
            set winds {}
            set windr {}
            set windg {}
            set windb {}
            set feuchte {}
            set sicht {}
            set druck {}

suchen und dahinter:

Code: Select all

            set i [string first {Aktuelles Wetter vom } $state(body) $i]
            set j [string first {Ortszeit</span>} $state(body)]
            set wetter(lastup) [string range $state(body) [expr $i+21] [expr $j-2]]
            regsub { - } $wetter(lastup) { um } wetter(lastup)
einfügen. Somit hat man in $wetter(lastup) das Datum und die Zeit des letzten Updates drin. Für die Ausgabe muss in der Zeile:

Code: Select all

                    append output " und weht ein Wind der Stärke [string map {k.A. unbekannt} [string trimr $winds { bft\n}]] aus [string map {k.A. unbekannt} $windr].
nur ein Stück angefügt werden, sodaß die Zeile dann wie folgt lautet:

Code: Select all

                    append output " und weht ein Wind der Stärke [string map {k.A. unbekannt} [string trimr $winds { bft\n}]] aus [string map {k.A. unbekannt} $windr]. Die letzten Daten wurden am $wetter(lastup) aufgenommen."
Die Ausgabe sieht dann wie folgt aus:
Es ist in Wien 32,3 (38,6) °C, leicht bewölkt und weht ein Wind der Stärke 3 aus Nord. Die letzten Daten wurden am 22.07.2006 um 14:00 Uhr aufgenommen. © Wetter.com AG
Nun maulen endlich die Leute in meinem Channel nicht mehr rum, dass die Wetterdaten garnicht stimmen :lol:

Tsukasa
Fleiß kann man vortäuschen, faul muss man schon selber sein.
User avatar
De Kus
Revered One
Posts: 1361
Joined: Sun Dec 15, 2002 11:41 am
Location: Germany

Post by De Kus »

kleiner Hinweis vor dem Schlafen gehen: regsub ist dort völlig unnötig, ein string map ist vollkommend ausreichend :).
Die Idee ist nett, ich würd es jetzt persönlich aber nur beim langen format dazuschreiben. Aber kann sich ja jeder zusammenschustern wie er es will... dafür ist es ja GNU GPL :).
De Kus
StarZ|De_Kus, De_Kus or DeKus on IRC
Copyright © 2005-2009 by De Kus - published under The MIT License
Love hurts, love strengthens...
H
Hottihotte
Voice
Posts: 23
Joined: Tue Jun 27, 2006 4:38 pm

Post by Hottihotte »

De Kus wrote:
Hottihotte wrote:das mit "*" geht auch nicht
Glaube da hast du etwas falsch gelesen ^-^. Es gibt für Prozeduren im Eggdrop einen Parameter für den Namen unter dem der Bot einen kennt. Kennt er einen nicht, ist es "*". Und wenn man für den Handle "*" abfrägt, ob die Flags "-|-" vorhanden sind, ist das immer unwahr, obwohl es für jeden gültigen wahr wäre :D. Aber man kann das ganze folgend umgehen:

ca. bei Zeile 165 einfach
{[matchattr $hand $wetter(langflags) $chan] || $query}
mit
{[matchattr $hand $wetter(langflags) $chan] || $wetter(langflags) == "-|-" || $query}
ersetzen.

Wichtig ist dann nur, dass man auch wirklich "-|-" schreibt und nicht "-" *gg*.
*ist jetzt gerade zu faul, wegen den paar Zeichen alles neu hochzuladen*
die zeile finde ich in der neuen version leider nicht
was muß ich nun ändern?
User avatar
De Kus
Revered One
Posts: 1361
Joined: Sun Dec 15, 2002 11:41 am
Location: Germany

Post by De Kus »

Hottihotte wrote:die zeile finde ich in der neuen version leider nicht
was muß ich nun ändern?
Der Clue ist, dass es jetzt schon von vornherein eingebaut ist, und es somit nichts zu ändern gibt :P.
De Kus
StarZ|De_Kus, De_Kus or DeKus on IRC
Copyright © 2005-2009 by De Kus - published under The MIT License
Love hurts, love strengthens...
H
Hottihotte
Voice
Posts: 23
Joined: Tue Jun 27, 2006 4:38 pm

Post by Hottihotte »

-lang geht aber bei den normalen leuten nicht

|13:17:46| <Shifty> !wetter -lang 32427
|13:17:56| <Angel> Es ist in Minden 27,1 (31,7) °C und weht ein Wind der Stärke 2 aus Nord-Ost. © Wetter.com AG

mehr kommt da nicht
User avatar
De Kus
Revered One
Posts: 1361
Joined: Sun Dec 15, 2002 11:41 am
Location: Germany

Post by De Kus »

Hottihotte wrote:-lang geht aber bei den normalen leuten nicht

|13:17:46| <Shifty> !wetter -lang 32427
|13:17:56| <Angel> Es ist in Minden 27,1 (31,7) °C und weht ein Wind der Stärke 2 aus Nord-Ost. © Wetter.com AG

mehr kommt da nicht
Und das soll bei v0.12.8 mit wetter(langflags) "-|-" so sein?!
Ich sehe da nämlich gerade, dass im Kommentar fälschlich von "-" die Rede ist, in meinen Posts hier wurde aber immer korrekt von "-|-" gesprochen (wie du ja selbst noch kopiert hast) :D.
De Kus
StarZ|De_Kus, De_Kus or DeKus on IRC
Copyright © 2005-2009 by De Kus - published under The MIT License
Love hurts, love strengthens...
H
Hottihotte
Voice
Posts: 23
Joined: Tue Jun 27, 2006 4:38 pm

Post by Hottihotte »

was genau meinst du damit?

wenn ich das mache geht es aber nicht wenn andere es machen wollen
|13:37:24| <The-King> !wetter -lang 14542
|13:37:35| <Angel> Detaillierte Wetterübersicht für Werder: (Werte unterliegen Copyright © 2006 Wetter.com AG)
|13:37:38| <Angel> leicht bewölkt —— 27,5 (29,2) °C
|13:37:39| <Angel> 2 Beaufort (11 km/h mit Böen bis 22 km/h) aus Nord-Ost
|13:37:41| <Angel> 1018.6 hPa —— 39 % rel. Feuchte —— 50 km Sichtweite
c
camel
Voice
Posts: 1
Joined: Wed Jul 26, 2006 12:06 pm

Post by camel »

Hat einer denn jetz das Script was einwandfrei funktioniert ??

Und kann er mir sagen wo ich es downloaden kann ???

MFG
camel
H
Hazard
Voice
Posts: 18
Joined: Thu May 25, 2006 6:18 pm

Post by Hazard »

Das auf der ersten seite sollte ohne probleme gehen, zumindest bei mir geht alles, bis auf die wetterwarnungen :P
H
Hottihotte
Voice
Posts: 23
Joined: Tue Jun 27, 2006 4:38 pm

Post by Hottihotte »

wie kann ich es nun machen das andere auch das "!wetter -lang" benutzen können?
Post Reply