【Day 30】PythonでWeb上の最新ニュースを自動取得して通知しよう

未分類

Pythonの得意技のひとつが「スクレイピング」です。
今回は、特定のWebサイトから最新のニュース見出しを自動取得し、要約・表示まで行うツールを作ってみましょう。

🔧 今回の目標

  • ニュースサイト(例:Yahooニュース)のトップ記事を取得
  • 見出しとリンクを一覧で表示
  • 後で応用してLINE通知やメール送信も可能に!

📦 使用ライブラリ

pip install requests beautifulsoup4

📝 Pythonコード例


import requests
from bs4 import BeautifulSoup

# ニュースサイトのURL(例:Yahooニュース トップ)
url = "https://news.yahoo.co.jp/"

# HTML取得
res = requests.get(url)
soup = BeautifulSoup(res.text, "html.parser")

# トップニュース見出しを取得(構造はサイトによって異なる)
headlines = soup.select("a.sc-fznyAO")  # 要調整

print("📢 最新ニュース一覧:")
for h in headlines[:5]:
    title = h.text.strip()
    link = h.get("href")
    print(f"{title} → {link}")

📎 注意点

  • HTMLの構造はサイトによって異なるため、selectのセレクタは都度調整が必要です
  • 過剰アクセスを避けるため、適切な間隔・User-Agent設定も重要です
  • APIが用意されているサイトはAPI経由の取得が理想的です

💡 応用アイデア

  • 取得データを毎日保存して変化を記録
  • ChatGPT APIと連携して要約生成
  • SlackやLINEへ自動通知

▶️ 次回予告

Day31では、Pythonで天気予報や気温・湿度などの気象情報を取得し、自動で「今日の服装アドバイス」や「警報通知」を行うツールを紹介予定です!

コメント

タイトルとURLをコピーしました