J'avais besoin d'une prévision météo pour mon propre système IoT.
J'ai utilisé BeautifulSoup pour obtenir l'heure et la probabilité de précipitations de la ville de Kusatsu à partir de tenki.jp.
python nécessite beautifulsoup4
.
conda install beautifulsoup4 requests -y
Examinez les classes et les balises des pièces associées en vérifiant avec Chrome. Je voulais une probabilité de précipitation horaire, alors je l'ai recherchée.
class = forecast-point-1h class = prob-precip Il y avait des données dans la durée.
Par conséquent, la méthode d'extraction est la suivante.
scraping
# -*- coding: utf-8 -*-
import requests
from bs4 import BeautifulSoup
#tenki.URL de la page de la zone cible de jp(Ville de Kusatsu, préfecture de Shiga)
url = 'https://tenki.jp/forecast/3/16/4410/13208/'
#Requête HTTP
r = requests.get(url)
bsObj = BeautifulSoup(r.content, "html.parser")
kusatu_1h = bsObj.find(class_="forecast-point-1h")
##temps
h = []
hour = kusatu_1h.find(class_="hour")
h_tem = hour.find_all('span')
h = [int(h_tem[x].string) for x in range(len(h_tem))]
print(h)
##pour cent pluvieux
kousui = kusatu_1h.find(class_="prob-precip")
k_tem = kousui.find_all('span')
k = [k_tem[x].string for x in range(len(k_tem))]
print(k)
Résultat d'exécution
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24]
['(%)', '---', '---', '---', '---', '---', '---', '---', '---', '---', '---', '---', '---', '---', '---', '---', '---', '---', '90', '90', '70', '70', '70', '80', '70']
Obtenez la météo et la température d'aujourd'hui avec le web scraping-Qiita
Recommended Posts