Python プログラミング

【Python】tenki.jpをスクレイピングしてデータを入手する

皆さんこんにちは。いし(@ishilog2)です。

今回はPythonを用いて、tenki.jpからデータ取得したいと思います。
スクレイピングが禁止されているWEBページもあるのでお気を付けください。

導入編

今回のコードではrequestsとBeautifulSoupを使用します。
インストールしていない方はインストールして下さい。

実践

実施すること

tenki.jpから本日の天気と明日の天気を取得します。
https://tenki.jp/forecast/3/16/4410/13104/

サンプルコード

結果

解説

① requestsを用いてHTMLを取得
requests.get('URL')でHTML情報を習得します。

② BeautifulSoupを使用してhtml形式にパース
①で習得したHTMLからBeautifulSoupオブジェクトを作成します。

③ forecast-days-wrap clearfixクラスの文字列を取得
④ 取得した内容をリストに格納
リスト内表記を使用して、習得したデータをリストに格納・リスト内の要素の前後にある空白を削除します。splitlines()で改行コードで分割して、strip()で空白を削除します。
習得したデータがリストに格納されました。ただこれだと見づらいのでリスト内の空白要素を削除します。
⑤ リストからデータを取り出す
リストから取り出すには変数[要素の箇所]となります。リスト内の要素は左から0始まりでアクセスできます。
今回の場合の各要素の場所は次の画像を参考にして下さい。

<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-3739353929508237"
     crossorigin="anonymous"></script>
<!-- afi_1 -->
<ins class="adsbygoogle"
     style="display:block"
     data-ad-client="ca-pub-3739353929508237"
     data-ad-slot="4785194993"
     data-ad-format="auto"
     data-full-width-responsive="true"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>

-Python, プログラミング
-,

© 2021 IshiLog.com Powered by AFFINGER5