初心者でもできた!YahooニュースをPythonでスクレイピングしてみた体験記

初心者でもできた!YahooニュースをPythonでスクレイピングしてみた体験記

こんにちは。MacBook Airを使って勉強中のLucyです。
最近よく耳にする「Webスクレイピング」に興味を持ち、Pythonを使ってYahooニュースの見出しを取得してみました。

結果から言うと……大成功!
でも、そこにたどり着くまでには、いくつものつまずきがありました。

この記事では、初心者がスクレイピングに挑戦して「つまづいたこと」や「乗り越えたポイント」をリアルに記録します。
収益化を目指してブログを始めた方、プログラミングに興味がある方の参考になれば嬉しいです。


🔰 スクレイピングって何?

スクレイピングとは、Webページの情報(HTML)を自動で取得・抽出する技術です。
たとえば、「ニュースの見出し」「商品の価格」「天気情報」などをPythonを使って収集できます。

今回はPythonのライブラリ「requests」と「BeautifulSoup」を使って、Yahoo!ニュースの見出しを取得してみました。

ちなみに、BeautifulSoupという名前の由来、とっても可愛いんですよ。ちょっとした休憩にぜひ。


💻 使用した環境

  • PC:MacBook Air
  • OS:macOS
  • Python:3.9
  • エディタ:VS Code
  • 実行:ターミナル

📥 必要なライブラリをインストール

最初に以下のコマンドで必要なライブラリをインストールしました。

pip3 install requests beautifulsoup4

(Macでは pip ではなく pip3 を使うことが多いそうです)

今回使用した requestsBeautifulSoup も、Pythonの「ライブラリ」と呼ばれる便利ツールの一種です。

Pythonのライブラリとは?便利な道具と組み合わせ例まとめ


📝 Yahoo!ニュースの見出しを取得するコード

以下が実際に使ったPythonコードです:

import requests
from bs4 import BeautifulSoup

url = 'https://news.yahoo.co.jp/'
headers = {'User-Agent': 'Mozilla/5.0'}

response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')

headlines = soup.select('a[href^="https://news.yahoo.co.jp/articles/"]')

seen = set()
for headline in headlines:
    title = headline.get_text(strip=True)
    if title and title not in seen:
        print(title)
        seen.add(title)

これで、ターミナルにYahooニュースの見出しがずらっと表示されました!


⚠️ うまくいかなかったこと

・pipが使えない?

ターミナルで pip install を入力しても「コマンドが見つかりません」と出てしまいました。

正解は pip3 install でした!

・Pythonファイルが見つからない?

保存したファイルを実行しようとしても、「そのファイルは存在しません」と言われてしまいました。

→ 実は ファイルが「Downloads」に保存されていたのに、ターミナルでは別の場所にいたのが原因。

cd ~/Downloads
python3 yahoo_scraping.py

・タイプミスでうまくいかない

「Downloads」なのに、うっかり「Download」と入力していたことも……。


📈 アフィリエイト:学習環境・ツール紹介

おすすめVPN(海外からのアクセス制限対策にも)

スクレイピング中やWordPressのログイン時にアクセス制限されることがあります。そんなときはVPNがあると安心。

おすすめのPython学習サービス

私が実際に比較検討したオンライン学習サービスの中で、初心者に優しくて特に良いと感じた2つをご紹介します:

※上記はアフィリエイトリンクを含みます。


🎉 まとめ

  • pip3やパスの確認など、初心者にはつまづきポイントが多い
  • でもひとつずつ調べれば、スクレイピングは本当に楽しい!
  • 学習しながらブログにも書いて、収益にもつながるのが嬉しい

これからは、データをCSVに保存したり、グラフにしたり…もっと応用にもチャレンジしてみたいと思います!

スクレイピングに成功した後は、次にどんなステップを踏めばいいのか?

【初心者の記録】Pythonスクレイピング学習ロードマップでは、実践に役立つ教材やステップをまとめています。

上部へスクロール