Outils pour utilisateurs

Outils du site


issue146:python

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révisionLes deux révisions suivantes
issue146:python [2019/07/12 12:57] d52frissue146:python [2019/07/12 15:23] d52fr
Ligne 214: Ligne 214:
 Aussi, si dans la structure de données de réponse[‘currently’] la clé « preciType » est présente, nous l'imprimerons ; autrement, nous sortirons sans problème. C'est la partie « clé dans le distionnaire » de la clause if. À nouveau, pour beaucoup d'entre vous, nous avons déjà fait de telles choses avant ; c'est donc un sujet usé. Pour les autres ce sont des informations nouvelles. Aussi, si dans la structure de données de réponse[‘currently’] la clé « preciType » est présente, nous l'imprimerons ; autrement, nous sortirons sans problème. C'est la partie « clé dans le distionnaire » de la clause if. À nouveau, pour beaucoup d'entre vous, nous avons déjà fait de telles choses avant ; c'est donc un sujet usé. Pour les autres ce sont des informations nouvelles.
  
-Maintenant, regardons, la manière d'obtenir la données en direct. +Maintenant, regardons, la manière d'obtenir les données en direct. Nous commençons par définir un certain nombre de variables de sorte que nous pouvons l'avoir simplement prêt à l'emploi dans une chaîne. Voici le code (en haut à droite).  
 + 
 +Notez que l'appel de requests ne prend pas les réglages de délai déppasé en compte. C'est facile à changer, si ça vous pose problème. Ajoutez simplement une ligne et remplacez les deux dernières lignes du code ci-dessus : 
 + 
 +timeout = 10   # 10 second timeout 
 + 
 +session = requests.Session() 
 + 
 +response = session.get(url, timeout=timeout).json()
  
 **Now we have the JSON data structure in our dictionary, just like we read it from the local file earlier. So now, you can comment our four lines that read the local file, and add the lines above. This way, if you want to play some more, you can still work with the local file by commenting out the “live” request code and uncommenting the local file-read code. **Now we have the JSON data structure in our dictionary, just like we read it from the local file earlier. So now, you can comment our four lines that read the local file, and add the lines above. This way, if you want to play some more, you can still work with the local file by commenting out the “live” request code and uncommenting the local file-read code.
Ligne 221: Ligne 229:
  
 For those of you who don’t live in the US, and/or don’t use English as your primary language, there are various options for you that keep you from having to write Fahrenheit to Celsius conversion functions, and will present the display text in a language that you want. For example, if you want to see the output in Norwegian, you can pass “nb” within the URL as language and “si” as the units. Below is a modified URL string creation statement that you can use to set things up correctly. Set ‘unitstouse’ as “si” and ‘langtouse’ to ‘nb’. If you want Spanish, use “es”. If you want German, use “de”, and so on. It’s all in the API docs.** For those of you who don’t live in the US, and/or don’t use English as your primary language, there are various options for you that keep you from having to write Fahrenheit to Celsius conversion functions, and will present the display text in a language that you want. For example, if you want to see the output in Norwegian, you can pass “nb” within the URL as language and “si” as the units. Below is a modified URL string creation statement that you can use to set things up correctly. Set ‘unitstouse’ as “si” and ‘langtouse’ to ‘nb’. If you want Spanish, use “es”. If you want German, use “de”, and so on. It’s all in the API docs.**
 +
 +Maintenant nous avons la structure de données de JSON dans notre dictionnaire, exactement comme nous les lisions précédemment à partir du ficher. Aussi, nous pouvons commenter nos quatre lignes qui lisent le fichier local et ajouter les lignes ci-dessus. De cette façon, si vous voulez continuer à tester, vous pouvez encore utiliser les fichier local en commentant le code de demande directe et en décommentant le code de lecture du fichier local.
 +
 +J'ai pris le programme de démonstration complètement fonctionnel que j'avais créé (sans ma clé secrète, bien sûr, mais vous pouvez mettre la votre) et je l'ai porté sur pastebin. L'adresse est https://pastebin.com/yJ7dJGis .
 +
 +Pour ceux qui ne vivent pas aux USA, et/ou dont l'anglais n'est pas la langue maternelle, vous disposez de nombreuses options qui vous évitent de devoir écrire des fonctions de conversions des Fahrenheit en Celcius et qui présenteront le texte affiché dans la langue que vous voulez. Par exemple, si vous voulez qua sortie soit en norvégien, vous pouvez passer dans l'URL « nb » comme langue et « si » comme unités. Ci-dessous, vous trouvez une déclaration de création d'une chaîne d'URL modifiée que vous pouvez utiliser pour régler les choses correctement. Changez « unitstouse » en « si » et « langtouse » en « nb ». Si vous voulez de l'espagnol, utilisez « es ». Pour l'allemand, « de » et ainsi de suite. Tout est dans les docs d'API.
  
 **Where to go from here? Well, if you go back to the DarkSky API Documentation page I directed you to before, they have a full list of all the keys that are available. They include daily forecasts for the current day plus seven days, hourly forecasts, changing the output language and units of measurements, minute by minute forecasts for the next hour, alerts for severe weather information, and even a “time machine mode” that allows you to include a date in the past or in the future and get the observed (past) or forecasted (future) data. I haven’t played with these two options yet, so I don’t know how far backwards or forwards you can go. **Where to go from here? Well, if you go back to the DarkSky API Documentation page I directed you to before, they have a full list of all the keys that are available. They include daily forecasts for the current day plus seven days, hourly forecasts, changing the output language and units of measurements, minute by minute forecasts for the next hour, alerts for severe weather information, and even a “time machine mode” that allows you to include a date in the past or in the future and get the observed (past) or forecasted (future) data. I haven’t played with these two options yet, so I don’t know how far backwards or forwards you can go.
Ligne 227: Ligne 241:
  
 Start up the Time Machine!** Start up the Time Machine!**
 +
 +Où aller à partir de là ? Eh bien, si vous retournez à la page de documentation de l'API DarSky vers laquelle je vous ait dirigé précédemment, vous trouverez une liste complète de toutes les clés disponibles. Elles comprennent les prévsions quotidiennes pour aujourd'hui et les sept jours suivants, des prévisions à l'heure, la possibilité de changer la langue de sortie et les unités de mesure, des prévisions minutes par minute pour la prochaine heure, des alertes en cas d'informations sur du mauvais temps, et même un « time machine mode » (mode « machine à remonter le temps ») qui vous permet d'inclure une date dans le passé ou le futur pour disposer des données observées (passé) ou prévues (futur). Je n'ai pas encore joué avec ces options ; aussi, je ne sais pas de combien vous pouvez vous éloigner du temps présent dans un sens ou dans l'autre.
 +
 +Si vous êtes un « fana de la météo » comme moi, ceci peut être un sujet vraiment amusant. Il devrait être assez facile de mettre ce code dans une interface graphique. Nous pourrions faire cela quelque part dans le futur.
 +
 +Démarrez la machine à remonter le temps !
  
issue146/python.txt · Dernière modification : 2019/07/16 23:06 de andre_domenech