pywws.toservice

Poster des mise à jour météo pour des services tels que Weather Underground

usage: python -m pywws.toservice [options] data_dir service_name
options are:
 -h or --help     display this help
 -c or --catchup  upload all data since last upload
 -v or --verbose  increase amount of reassuring messages
data_dir is the root directory of the weather data
service_name is the service to upload to, e.g. underground

Introduction

Plusieurs organisations permettent aux stations météorologiques de télécharger des données en utilisant une simple requête ‘POST’ ou ‘GET’ HTTP, avec les données codées comme une séquence clé=valeur `` séparées par des paires de caractères ``&.

Ce module permet à pywws de téléverser les données lues à ces organisations. Il est hautement personnalisable en utilisant les fichiers de configuration. Chaque ‘service’ nécessite un fichier de configuration et de deux gabarits dans pywws/services (ne devrait pas avoir besoin d’être modifié par l’utilisateur) et une section dans le fichier weather.ini contenant des données spécifiques sur l’utilisateur telles que votre identificateur de site et le mot de passe.

Il existe actuellement six services pour lesquels des fichiers de configuration ont été créés.

organisation service name fichier de configuration
UK Met Office metoffice ../../pywws/services/metoffice.ini
Open Weather Map openweathermap ../../pywws/services/openweathermap.ini
PWS Weather pwsweather ../../pywws/services/pwsweather.ini
Stacja Pogody stacjapogodywawpl ../../pywws/services/stacjapogodywawpl.ini
temperatur.nu temperaturnu ../../pywws/services/temperaturnu.ini
Weather Underground underground ../../pywws/services/underground.ini
wetter.com wetterarchivde ../../pywws/services/wetterarchivde.ini

Configuration

Si vous ne l’avez pas déjà fait, visitez le site Web de l’organisation et créez un compte pour votre station météo. Prenez note de tous les détails d’identification du site et du mot de passe vous ayant été donnés.

Stop any pywws software that is running and then run toservice to create a section in weather.ini:

python -m pywws.toservice data_dir service_name

service_name est le nom de services en un seul mot, tels que metoffice, data_dir est votre répertoire de données météo, comme d’habitude.

Editer le fichier weather.ini et trouver la section correspondant au nom du service, par exemple, [underground]. Copier les détails de votre site dans cette section, par exemple:

[underground]
password = secret
station = ABCDEFG1A

Maintenant, vous pouvez tester votre configuration:

python -m pywws.toservice -vvv data_dir service_name

Celà devrait vous afficher la chaîne de données qui est téléversé. Tout manquement devrait générer un message d’erreur.

Téléverser les anciennes données

Now you can upload your last 7 days’ data, if the service supports it. Edit your status.ini file and remove the appropriate line from the last update section, then run toservice with the catchup option:

python -m pywws.toservice -cvv data_dir service_name

Cela peut prendre 20 minutes ou plus, en fonction de la quantité de données que vous avez.

Ajoutez le(s) téléversement de(s) service(s) aux tâches régulières

Modifiez votre fichier weather.ini de nouveau et ajoutez une liste de services dans la section [live], [logged], [hourly], [12 hourly] ou [daily], en fonction de la fréquence à laquelle vous souhaitez envoyer les données. Par exemple:

[live]
twitter = []
plot = []
text = []
services = ['underground_rf']

[logged]
twitter = []
plot = []
text = []
services = ['metoffice', 'stacjapogodywawpl']

[hourly]
twitter = []
plot = []
text = []
services = ['underground']

Note that the [live] section is only used when running LiveLog. It is a good idea to repeat any service selected in [live] in the [logged] or [hourly] section in case you switch to running Hourly.

Restart your regular pywws program (Hourly or LiveLog) and visit the appropriate web site to see regular updates from your weather station.

Notes sur les services

UK Met Office

Open Weather Map

Le comportement par défaut est d’utiliser votre nom d’utilisateur pour identifier la station météo. Cependant, il est possible pour un utilisateur d’avoir plus d’une station météo, il y a donc un paramètre``name`` dans l’API qui peut être utilisé pour identifier la station. Cela apparaît comme id dans weather.ini. Assurez-vous que vous ne choisissez pas un nom qui est déjà utilisé.

PWS Weather

Weather Underground

API

Classes

ToService(params, status, calib_data, ...) Téléverse les données météo pour les services météorologiques tels que Weather
class pywws.toservice.ToService(params, status, calib_data, service_name)[source]

Téléverse les données météo pour les services météorologiques tels que Weather Underground.

Paramètres:
send_data(data)[source]

Téléverse un enregistrement de données météo.

Le paramètre data contient les données à être téléversées. Il devrait y avoir un enregistrement ‘calibré’ de données, tels que stockés dans pywws.DataStore.calib_store.

Paramètres:data (dict) – the weather data record.
Retourne:success status
Type retourné:bool
Upload(catchup, live_data=None)[source]

Téléverse un enregistrement de données météo.

Cette méthode téléverse le plus récent enregistrement de données météo ou tous les enregistrements depuis le dernier téléchargement (jusqu’à 7 jours), selon la valeur de catchup.

Il définit la valeur de configuration last update à l’horodatage de l’enregistrement le plus récent correctement téléversé.

Paramètres:catchup (bool) – upload all data since last upload.
Retourne:success status
Type retourné:bool
pywws.toservice.main(argv=None)[source]