Meldungen an Twitter

Fragen, Anregungen zur PC-Wetterstations-Software

Moderatoren: Werner, Tex, weneu

Benutzeravatar
Sprite01
Beiträge: 890
Registriert: 06 Sep 2006 16:34
Wohnort: Dessau
Hat sich bedankt: 3 mal
Kontaktdaten:

Beitrag von Sprite01 »

Dann habe ich vermutlich eine Frage an (batch)jörgeli ... :D

Könntest du hier eventuell mal bitte eine mögliche Twittermail-Batch-Datei posten ? :oops:
Ich habe ja jetzt erst mal nur eine Twittermail-Adresse der Form ppp2p2-pppppp@twittermail.com.
Die twitter.txt möchte ich nun über blat (C:/Windows/blat.exe) zwitschern.

WsWin-Mail nutze ich schon für andere Sendungen, oder kann man gar mehrere Sachen mit unterschiedlichen Sendeintervallen versenden ?
Ich denke nicht.
Grüße aus Dessau (Stadt Dessau-Roßlau)

Dirk
http://www.Regionalwetter-SA.de
http://www.DessauWetter.de
Bild
Karmar

Beitrag von Karmar »

@All,

Das probleem habe ich auch, ich gebrachen die mail auch schön fur eine mail database.
rabit
Beiträge: 324
Registriert: 16 Dez 2001 01:00
Wohnort: Mannheim
Kontaktdaten:

Beitrag von rabit »

Habe ein kleines Script für "python" geschrieben.
Die Daten liegen in twitter_status.txt. Den Code kopieren und als Datei in den gleichen Ordner als dateiname.py speichern. Maildaten ändern nicht vergessen.

Python muss noch installiert sein. http://www.python.org/download/
"Version 3.1.2 Windows X86 MSI installer" oder auch die 64Bit Version.

Code: Alles auswählen

# -*- coding: iso-8859-1 -*-
import smtplib


MAILSERVER = "smtp.xxx.com"
FROMADDR = "<xxx>"
USER = "xxxxxx"
PASSWORD = "xxxxxx"
TOADDR = "<ziel>"
FILE = "twitter_status.txt"

with open&#40;FILE,"r"&#41; as infile&#58;
    message = "\n" + infile.read&#40;&#41;
message = message.replace&#40;"bewölkt", "bew."&#41;
message = message.replace&#40;"ä", "ae"&#41;
server = smtplib.SMTP&#40;MAILSERVER&#41;
server.login&#40;USER, PASSWORD&#41;
server.sendmail&#40;FROMADDR, TOADDR, message&#41;
server.quit&#40;&#41;
Viele Grüße aus Mannheim
gerhard

Bild
Davis VP2 > Weather Envoy > Weatherlink > WSWIN
Davis VP2 > Weather Envoy > Meteohub > Meteoplug
Thunder-in-Paradise
Beiträge: 128
Registriert: 31 Jan 2009 17:21
Wohnort: Lübeck
Kontaktdaten:

Beitrag von Thunder-in-Paradise »

Hallo Gerhard-

Wie hast Du denn das geschafft, TWITTERMAIL den Zusatz: "READ MORE AT..."" abgewöhnen?


http://twitter.com/luebeckwetter
Beste Grüße aus Lübeck

Peter
www.luebecker-wetterservice.de
Bild
_______________________________________
Davis Vantage Pro2 Aktiv Plus + WsWin + WeatherDisplay (Live)
rabit
Beiträge: 324
Registriert: 16 Dez 2001 01:00
Wohnort: Mannheim
Kontaktdaten:

Beitrag von rabit »

Wie hast Du denn das geschafft, TWITTERMAIL den Zusatz: "READ MORE AT..."" abgewöhnen?
Der mailtext darf nicht länger als 140 Zeichen sein. Im Text auch keine <CR><LF>
Wswin hängt aber immer noch Datum und Uhrzeit hinten mit dran und das auch noch in neuen Zeilen. Mit dem kleinen Script oben funktioniert es im Prinzip wie vorher mit wget.
Viele Grüße aus Mannheim
gerhard

Bild
Davis VP2 > Weather Envoy > Weatherlink > WSWIN
Davis VP2 > Weather Envoy > Meteohub > Meteoplug
Thunder-in-Paradise
Beiträge: 128
Registriert: 31 Jan 2009 17:21
Wohnort: Lübeck
Kontaktdaten:

Beitrag von Thunder-in-Paradise »

@Gerhard

Vielen Dank für die prompte Antwort.

Das mit den nur 140 Zeichen bei TWITTERMAIL hatte ich mir schon gedacht.
Leider klappte das bei mir so nicht. Es funktionierte erst, warum auch immer, nachdem ich viel, viel weniger als 140 Zeichen verwendete. Und das waren für meinen Zweck zu wenige Zeichen.

Ich habe des weiteren versucht, Deinen anderen Vorschlag umzusetzen.

Dazu habe ich Python installiert, im selben Programm-Order die dateiname.py (Code-Datei) und die ws_witter-status.txt (von WsWin regelmäßig erzeugt) hinzugefügt.
In diesem Programmorder befinden sich ja denn auch alle von der Installationsroutine erzeugten Programmdateien von Python.
Über WsWin habe ich dann unter: "datei - optionen - zeitsteuerung2 - extra" die python.exe im Fenster "Programm" angesteuert.

Wenn ich nun an dieser Stelle per Klick WsWin anweise, einen Test zu machen, wird die python.exe zwar geöffnet, bleibt jedoch, wie im folgendem Bild zu sehen, stehen:
Bild

Es wird wohl die py-Datei nicht abgearbeitet.
Woran kann das liegen?

Hinweisen möchte ich noch, dass es bei mir mit dem nicht mehr funktionierende "wget"-Programm erst lief, als ich in WsWin nicht die EXE, sondern die (twitter)-BAT-Datei im WsWin-Fenster "Programm" verwendet hatte.
Bei Python gibt es ja aber keine BAT-Datei, die ich verwenden könnte.

Gerhard, hast Du eine Lösung für mich?

LG
Beste Grüße aus Lübeck

Peter
www.luebecker-wetterservice.de
Bild
_______________________________________
Davis Vantage Pro2 Aktiv Plus + WsWin + WeatherDisplay (Live)
rabit
Beiträge: 324
Registriert: 16 Dez 2001 01:00
Wohnort: Mannheim
Kontaktdaten:

Beitrag von rabit »

Ändere den Inhalt deiner twitter.bat einfach in:

Code: Alles auswählen

dateiname.py
Vielleicht auch

Code: Alles auswählen

python dateiname.py
Die Datei muss dann auch im gleichen Ordner liegen.
Dann rufe die twitter.bat wieder über wswin auf.

Aber probier vorher mal einfach mit Doppelclick auf deine .py Datei ob sich was tut. Am besten ein Kommandofenster öffnen, in den Ordner wechseln und die .py oder auch die twitter.bat Datei aufrufen. Es sollte keine Fehlermeldung kommen.

Ich rufe meine twitter.bat über "geplante Tasks auf"
Viele Grüße aus Mannheim
gerhard

Bild
Davis VP2 > Weather Envoy > Weatherlink > WSWIN
Davis VP2 > Weather Envoy > Meteohub > Meteoplug
Thunder-in-Paradise
Beiträge: 128
Registriert: 31 Jan 2009 17:21
Wohnort: Lübeck
Kontaktdaten:

Beitrag von Thunder-in-Paradise »

Hmmm, noch funzt es nich...

Wenn ich die "dateiname.py" selbst per Doppelklick aufrufe, erscheint kurz folgende Meldung:

Bild

Der Inhalt meiner "dateiname.py" sieht folgendermassen aus:

Code: Alles auswählen

# -*- coding&#58; iso-8859-1 -*-
import smtplib


MAILSERVER = "mail.gmx.net"  &#40;eigene Anm.&#58; smpt-Adrese von GMX&#41;
FROMADDR = "xxxxx at gmx.net" &#40;Eigene verwendete Mail-Adresse&#41; 
USER = "xxxxxx"  &#40;Benutername&#41;
PASSWORD = "xxxxx"  &#40;Passwort&#41;
TOADDR = "xxx at twittermail.com" &#40;Mailadresse v. twittermail erhalten&#41;
FILE = "ws_twitter_status.txt" &#40;Name v. WsWin erzeugte twitter_status.txt&#41;
with open&#40;FILE,"r"&#41; as infile&#58;
    message = "\n" + infile.read&#40;&#41;
message = message.replace&#40;"bewölkt", "bew."&#41;
server = smtplib.SMTP&#40;MAILSERVER&#41;
server.login&#40;USER, PASSWORD&#41;
server.sendmail&#40;FROMADDR, TOADDR, message&#41;
server.quit&#40;&#41;
Ist der obige Inhalt der py-Datei richtig?

Jedenfalls wird wohl wegen eines Fehlers diese Datei noch nicht vollständig abgearbeitet.

Dein Rat:

Code: Alles auswählen

Ändere den Inhalt deiner twitter.bat einfach in&#58;
Code&#58;
dateiname.py
verstehe ich nicht.
Soll ich den Namen der twitter.bat-Datei oder den Inhalt, sprich den innen liegenden Textinhalt, der twitter.bat (durch Übernahme des "dateiname.py"-Textes) ändern? - Letzteres habe ich schon mal probiert, erhielt aber beim Aufruf der BAT-Datei nur Fehlermeldungen.
Fragen über Fragen...und das sind noch nicht mal alle.
Du siehst, im Moment habe ich mit der korrekten Umsetzung noch Probleme.
Ich hoffe, Du kannst mein "Gestammel" noch folgenBild
Beste Grüße aus Lübeck

Peter
www.luebecker-wetterservice.de
Bild
_______________________________________
Davis Vantage Pro2 Aktiv Plus + WsWin + WeatherDisplay (Live)
Benutzeravatar
Mado
Beiträge: 814
Registriert: 21 Apr 2006 20:40
Wohnort: 89584 Ehingen
Hat sich bedankt: 1 mal
Danksagung erhalten: 15 mal
Kontaktdaten:

Beitrag von Mado »

Die Mail kommt nicht an, obwohl alles richtig hoffentlich gemacht worden ist.

Bekomme noch eine Fehlermeldung:
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

D:\xxx>Email_Twitter.bat

D:\xxx>python dateiname.py
Traceback (most recent call last):
File "dateiname.py", line 18, in <module>
server.sendmail(FROMADDR, TOADDR, message)
File "D:\xxx\lib\smtplib.py", line 718, in send
mail
(code,resp) = self.data(msg)
File "D:\xxx\lib\smtplib.py", line 484, in data

self.send(q)
File "D:\xxx\lib\smtplib.py", line 305, in send

s = s.encode("ascii")
UnicodeEncodeError: 'ascii' codec can't encode character '\xf6' in position 73:
ordinal not in range(128)

D:\xxx>
# -*- coding: iso-8859-1 -*-
import smtplib


MAILSERVER = "smtpmail.t-online.de"
FROMADDR = "<xxx>"
USER = "xxx@t-online.de"
PASSWORD = "xxxx"
TOADDR = "<xxx@twittermail.com>"
FILE = "ws_twitter_status.txt"

with open(FILE,"r") as infile:
message = "\n" + infile.read()
message = message.replace("bewölkt", "bew.")
message = message.replace("ä", "ae")

server = smtplib.SMTP(MAILSERVER)
server.login(USER, PASSWORD)
server.sendmail(FROMADDR, TOADDR, message)
server.quit()
Was bedeutet der fette "bewölkt"....

Hier sollte der Text nur einmal vorkommen. Oder auch nur das was bei der Registrierung der Email-Adresse angegeben worden ist.
Gruß
Manfred
------------------------------------------------------
Wetterstation: Nexus TE923 HW4

http://www.sternwarte-ehingen.de
rabit
Beiträge: 324
Registriert: 16 Dez 2001 01:00
Wohnort: Mannheim
Kontaktdaten:

Beitrag von rabit »

Ihr habt beide die gleichen Probleme mit dem Zeichensatz.
Kann es sein das die "twitter_status.txt" in Format UTF-8 ist?

Bei mir generiert wswin zur Zeit die Datei in ANSI Format, deshalb auch das mit dem "replace". Bedeutet ersetzten von "bewölkt" durch "bew.".
Ihr könnt die beiden Zeilen mit replace auch löschen.
Mir ist auch nicht ganz klar welches Format der twittermail Server wirklich benötigt.

Vielleicht hilft auch die Angabe von "utf-8" anstelle von "iso-8859-1" in der ersten Zeile.
Viele Grüße aus Mannheim
gerhard

Bild
Davis VP2 > Weather Envoy > Weatherlink > WSWIN
Davis VP2 > Weather Envoy > Meteohub > Meteoplug
Karmar

Beitrag von Karmar »

Vielleicht eine idee fur Werner um das ein zu bauen in wswin.
Ich habe jets WD Live ausprobiert und ich mus erlich sagen das dies super ist.
Entschuldigung fur mein Deutsch.

Aber ich must auch sage das WDLive nicht so an meine wunschen ist als wswin.

Ich hoffe das vielleicht eine möglichkeit auf eine einfage art in wswin fur twitter komt, sons ist twitter offline oder uber schalte auf WD Live.

Habe jets sehr gute erfarung mit twitter und man mach da viel gebrauch von hier in mein regio.

Waarum das man das immer ender must???
Updates gern, aber nicht etwas abschalten ist meine meinung, aber wer bin ich um das so sage.

Hoffentlich das Werner urgend wo maal etwas seit hat um vielleicht das einfag in zu bowwen in WsWin, geno so wie Awekas, Underground und so weiter.

Viele grosse.
Benutzeravatar
Mado
Beiträge: 814
Registriert: 21 Apr 2006 20:40
Wohnort: 89584 Ehingen
Hat sich bedankt: 1 mal
Danksagung erhalten: 15 mal
Kontaktdaten:

Beitrag von Mado »

Mit WSWin die Daten an Twitter zu übersenden, geht wunderbar. Auf jeden Fall, werde ich dies so belassen und nicht mit diesem Programm diese Daten zu übersenden.

Hatte zwar diese zwei Zeilen

message = message.replace("bewölkt", "bew.")
message = message.replace("ä", "ae")

entfernt, aber das Programm hat hier eine Meldung heraus gebracht, am Bildschirm.
Gruß
Manfred
------------------------------------------------------
Wetterstation: Nexus TE923 HW4

http://www.sternwarte-ehingen.de
Thunder-in-Paradise
Beiträge: 128
Registriert: 31 Jan 2009 17:21
Wohnort: Lübeck
Kontaktdaten:

Beitrag von Thunder-in-Paradise »

Ich habe leider die Twittermeldungen, trotz aller Hinweise, mit Pyton auch noch nicht zum Laufen gebracht.

Stellt man die twitter-status.txt auf ANSII-Format um, geht zwar das schwarze Fenster auf, es zeigt sich dann allerdings nur der Curser. Es wird nichts abgearbeitet, es erscheinen keine Fehlermeldung und nach ein paar Sekunden geht das Fenster unverrichteter Dinge wieder zu.
Die Abänderung, wie ferner vorgeschlagen, der ersten Zeile brachte nur Fehlermeldungen hervor.
Beste Grüße aus Lübeck

Peter
www.luebecker-wetterservice.de
Bild
_______________________________________
Davis Vantage Pro2 Aktiv Plus + WsWin + WeatherDisplay (Live)
rabit
Beiträge: 324
Registriert: 16 Dez 2001 01:00
Wohnort: Mannheim
Kontaktdaten:

Beitrag von rabit »

@Peter, über ein Dos-Fenster testen hilft da mehr. Es bleibt die Ausgabe auf dem Bildschirm erhalten. Kommt keine Fehlermeldung wurde das mail abgesendet. Zumindest bis zu deinem mail-Server.
Der sollte es ja weiter zu twittermail senden. Und twittermail weiter zu Twitter. Wenn twittermail die Daten nicht zu Twitter übertragen kann kommt von dort (twittermail) eine mail zurück mit Angabe vom Grund für den Fehler. Aber nur wenn Du bei twittermail unter settings eine e-mail Adresse eingetragen hast.

Ach wie schön und einfach war wget...

Bei mir funktioniert es zum Glück. Habe wenig Zeit für Optimierungen, Beruf geht vor.
Viele Grüße aus Mannheim
gerhard

Bild
Davis VP2 > Weather Envoy > Weatherlink > WSWIN
Davis VP2 > Weather Envoy > Meteohub > Meteoplug
Wetterwarte
Beiträge: 211
Registriert: 06 Dez 2001 01:00
Wohnort: Emden
Kontaktdaten:

Beitrag von Wetterwarte »

Hallo,

da ich ebenfalls mit der neuen Autorisationsmethode konfrontiert wurde, habe ich diese Anleitung genutzt und umgesetzt. Bei der Zeichenkodierung gab es auch bei mir erste Schwierigkeiten. Es gibt aber möglicherweise eine Lösung:

Schaut soch mal bei euch in den zu übertragenden Text. Gibt es da ein Gradzeichen oder irgendein anderes Sonderzeichen? Bei mir war es jedenfalls so, dass durch das Gradzeichen (°) das Absenden nicht möglich war. Lösung: Gebt das Zeichen als HTML-Code an. Es wird anschließend durch Twitter interpretiert, also:

° = &deg; ==> 13.3°C = 13.3&deg;C

Leider habe ich noch eine Hürde, bei der ihr mir vielleicht helfen könnt. Ich nutze auch den Service von Twittermail. Gibt es dort Beschränkungen, sodass man nur nach einer bestimmten Zeit wieder eine Mail an Twittermail senden darf?
Gruß Thomas

Wetterstation Emden:
wetter-ostfriesland.de

Bild
Antworten