«Restrictions de communication» que tout le monde aurait dû rencontrer à l'époque moderne Il est douloureux de ne pas pouvoir utiliser votre smartphone librement lors de vos déplacements. ~~ Il s'agit simplement d'augmenter la limite mensuelle de paquets ~~
Même ainsi, il y a des moments où je veux connaître la météo, même lorsque je vais au travail ou à l'école. C'est un problème si vous ne savez pas immédiatement quand la communication est restreinte.
Si vous pouvez voir le texte seul, c'est tout à fait le cas ... Alors pourquoi ne pas envoyer un message depuis LINE! ??
Donc, comme objectif final, si j'envoie le premier et le dernier train sur LINE, j'aimerais pouvoir obtenir les informations que je voulais savoir en répondant, alors j'ai commencé le développement.
Peut-être que le texte peut être fait plus rapidement que de regarder l'application ...
Tout d'abord, collectez des informations sur chaque station! !!
Tout d'abord, j'échangerai des messages sur LINE et créerai un système pour notifier la météo de chaque zone comme une pratique de grattage.
Pour le moment, obtenons des informations de Yahoo Weather en utilisant le grattage.
import requests
from bs4 import BeautifulSoup
Pour ce faire, utilisez des requêtes pour ouvrir l'URL en python. Ensuite, importez bs4 de BeautifulSoup pour extraire des données de HTML ou XML après avoir ouvert l'URL.
Ensuite, URL météo yahoo est la suivante. https://weather.yahoo.co.jp/weather/ Sur cette URL, vous pouvez voir la météo dans tout le pays en un coup d'œil, et vous pouvez creuser plus profondément dans la région que vous souhaitez connaître.
Tout d'abord, obtenez des URL locales de tout le pays.
target_url= "https://weather.yahoo.co.jp/weather/"
res = requests.get(target_url)
soup = BeautifulSoup(res.text, 'lxml')
elems = soup.find_all("a")
with open("yahooChiku.csv", "w", encoding="utf-8", newline ="") as ychiku:
writer = csv.writer(ychiku)
for e in elems:
chikuNumList = []
if re.search(r'<a data-ylk="', str(e)):
if re.search(r'"//weather.yahoo.co.jp/weather/jp/\d.*/"', str(e)):
row = re.search(r'"//weather.yahoo.co.jp/weather/jp/\d.*/"', str(e)).group().strip('"')
row = "https:" + row
chikuNumList.append(row)
writer.writerow(chikuNumList)
Veuillez vérifier différentes façons d'utiliser Beautiful Soup. Je ne l'utilise que de manière ponctuelle, donc je manque de connaissances ...
Ce que nous faisons avec ce code source est le processus d'extraction de l'URL de chaque région à partir de la météo dans tout le pays. Les balises contenant des URL locales peuvent être obtenues avec \ . Cependant, il existe d'autres informations contenues dans cette balise, utilisez donc des expressions régulières pour extraire uniquement celles qui incluent l'URL de chaque région. Puisque https n'est pas inclus dans les informations de balise, ajoutez "https" au début et écrivez-le dans csv et enregistrez-le.
Ça va être long pour le moment, alors c'est tout pour le moment.
Maintenant que j'ai l'URL locale, j'aimerais écrire un article sur la prise de l'URL de la ville, du quartier, de la ville et du village, le nom de chaque zone, et simplement envoyer un message sur LINE.
À la prochaine! !! !!
Recommended Posts