Je l'ai fait car il pleuvait et je voulais connaître le temps
pip install requests '' `` à l'invite de commande.import requests
r = requests.get("https://news.yahoo.co.jp/")
print(r.text)
<!DOCTYPE html>
<style data-styled="gpQmdr jhlPYu" data-styled-version="4.4.1" data-styled-streamed="true">
/* sc-component-id: sc-jAaTju */
.gpQmdr{display:-webkit-box;display:-webkit-flex;display:-ms- flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;overflow:hidden;position:relative;background-color:#efefef;height:80px;width:80px;} .gpQmdr::after{content:'';display:block;position:absolute;top:0;left:0;box-sizing:border-box;width:100%;height:100%;border:solid 1px rgba(0,0,0,0.06);}
[Service Web Météo] pour obtenir des informations météorologiques sur les lieux de vie (http://weather.livedoor.com/weather_hacks/webservice) Recherchez l'identifiant de la "subdivision principale (étiquette de ville)" de la zone demandée dans le lien du tableau de définition des points à l'échelle nationale sur le site ci-dessus. (Exemple: Préfecture de Kyoto, ville de Kyoto = 260010)
import requests
class GetWeather:
url = "http://weather.livedoor.com/forecast/webservice/json/v1?"
def getWeather(self, citycode):
query_params = {"city": citycode}
self.data = requests.get(self.url, params = query_params).json()
def showWeather(self):
print(self.data["location"]["city"], "Le temps est")
for weather in self.data["forecasts"]:
print(weather["date"])
print(weather["dateLabel"] + "La météo:" + weather["telop"])
print("")
citycode = 260010
w = GetWeather()
w.getWeather(citycode)
w.showWeather()
import requests
Importer la bibliothèque de demandes
class GetWeather
Définition de la classe GetWeather.
url = "http://weather.livedoor.com/forecast/webservice/json/v1?"
URL lors de la demande de données JSON
def getWeather(self, citycode):
query_params = {"city": citycode}
self.data = requests.get(self.url, params = query_params).json()
Ligne 6: Définition de la méthode getWeather. Spécifiez l'indicatif régional dans l'argument. Une méthode pour obtenir des données météorologiques.
Ligne 7: attribuez l'indicatif régional à query_params.
8ème ligne: Obtenez les données météorologiques avec requests.get () Avec cela, vous pouvez obtenir la météo de la zone du code spécifié par query_params avec l'indicatif régional défini dans l'url.
def showWeather(self):
print(self.data["location"]["city"], "Le temps est")
for weather in self.data['forecasts']:
print(weather["date"])
print(weather["dateLabel"] + "La météo:" + weather["telop"])
print("")
Ligne 10: Définition de la méthode showWeather. Une méthode pour afficher la météo acquise.
Ligne 11: En regardant le nom de propriété du champ de réponse de la spécification du service Web météo, vous pouvez voir que la propriété city de la propriété location a le nom de la subdivision principale, donc `self.data [" location "] [" city Vous pouvez afficher le nom de la subdivision principale de la propriété de la ville avec "]`
.
Ligne 12: De même, vous pouvez voir que la propriété date de la propriété prévisions a la date (date) de prévision et la propriété dataLabel a la date de prévision (aujourd'hui, demain ou après-demain).
Extraire les propriétés de la propriété prévisions avec.
Ligne 13: `` `` print (weather ["date"]) `` `` pour afficher la propriété date
Ligne 14: `` `` imprimer (météo ["dateLabel"] + "météo:" + météo ["telop"]) `` `
Afficher la propriété dateLabel et la propriété teleop
### Lignes 17-20
Ligne 17: Définition du code de la ville. (Ici, ville de Kyoto, préfecture de Kyoto)
Ligne 18: Création d'une instance de la classe GetWeather.
Ligne 19: appel à la méthode getWeather.
Ligne 20: appel à la méthode showWeather.
## Résultat d'exécution
Le temps à Kyoto est 2020-06-19 Météo du jour: nuageux après la pluie
2020-06-20 Météo de demain: nuageux puis ensoleillé
2020-06-21 Le temps après-demain: ensoleillé et parfois nuageux
## Résumé
- La communication HTTP est possible avec les demandes
――Il peut être intéressant de savoir si vous pouvez obtenir la météo de la préfecture et de la zone spécifiée par l'utilisateur.
――Il vaut mieux voir la météo normalement y ('^' c 彡 ☆)) Д´) Pan
- [Suite (Obtenir la météo avec les requêtes Python 2)](https://qiita.com/gs_project_py25/items/5edf946348b63b2a78b9)
Recommended Posts