LoginSignup
0
2

More than 1 year has passed since last update.

ニュース記事を棒読みに読ませるプログラムができるまで...(スクレイピング編)

Last updated at Posted at 2022-12-17

はじめに

 今回Pythonの勉強をする際に、最近ニュースを見ていなかったのでニュースを読み上げてくれるプログラムを作成しようかなと考えました。間違いがありましたらコメント等で連絡ください。
 この記事で行うことはWebスクレイピングを用いてWebサイトの情報を取るところまでやります。

目次

環境
Webスクレイピングをしてみた
sampleを作成した
まとめ
参考文献

環境

 以下の環境で動かしています

項目
CPU Core i5-8265U
Ubuntu 20.04

 WindowsやGoogle Colaboratoryなどでも出来ますが、Ubuntuの方が個人的に好き(使いやすい)なので今回はUbuntuで進めていきます。また、今回はGoogle NewsとVOICEVOXを用いて動かしてみようと思います。

Webスクレイピングをしてみた

 Webスクレイピングとは、サイトにある写真や文字などを抽出するコンピュータソフトウェア技術のことをいいます。
 今回はPythonのRequests_HTMLを使ってWebサイトから情報を抽出していきます。RequestsだとWebサーバで最終的にHTMLを作成するが、リアルタイムで更新するWebサイトはブラウザのエンジンで最終構築をするためWebサーバ内でできたHTMLをダウンロードしても違う内容が出てくるからです。

sampleを作成した

 早速スクレイピングでWebサイトからデータを取得します。今回はsampleを作ってみました。sampleを実行する前にpipでRequests_HTMLをインストールします。

$ pip install requests_html

sampleです。

#モジュールをインポート
from requests_html import HTMLSession

#インスタンス化
session = HTMLSession()

#URL先のデータを取得
url = 'https://news.google.com/home?hl=ja&gl=JP&ceid=JP:ja'
r = session.get(url)

#URLのHTMLをテキストに変換
r = r.text

#出力
print(r)

これを実行するとGoogle NewsのHTMLで書かれているものが出てきます。
ファイルはGitHubで公開しているのでクローンしたり、ダウンロードして使ってください。

まとめ

 今回は、スクレイピングを書きました。次回はスクレイピングで持ってきたHTMLからニュースのタイトルだけ抜き出してみようと思います。コードは書けているのですが、記事を書くのが難しい...
 なので、書き終わるまで色々なWebサイトをスクレイピングしてみてください(スクレイピングを禁止しているWebサイトもあるので注意してください。)

参考文献

PythonでWebスクレイピングをする方法を解説!【入門編】
requestsで取得できないWebページをスクレイピングする方法
図解!PythonでWEB スクレイピングを極めよう!(サンプルコード付きチュートリアル)

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2