【Python】Beautiful Soup を使ってスクレイピングする方法。

公開日: : 最終更新日:2020/04/19 Python , , ,

Beautiful Soup は、シンプルでわかりやすい API でデータを抜き出せる Python のライブラリです。

Beautiful Soup のインストール

Beautiful Soup を pip でインストールします。

インストールは正常に完了したのですが、以下のようなメッセージが表示されたので、pip を upgrade しました。

You are using pip version 8.1.1, however version 18.1 is available.
You should consider upgrading via the ‘pip install –upgrade pip‘ command.

pip のバージョンが 18.1 になりました。

wget でファイルを取得

スクレイピングするためのファイルを wget コマンドで取得します。

取得したファイル一覧を tree コマンドで確認します。

Requests で HTMLを取得する

先ほどは、wget で HTML ファイルを取得しましたが、Python ライブラリの requests を用いてもデータを取得することができます。

以下のように URL を指定します。HTTP に関する情報も取得できるようなので、コードとコメントで出力結果を載せておきます。

Beautiful Soup4 でスクレイピングする

先ほどダウンロードしたファイルの中から、index.html に含まれるリンクのURLとテキストを表示してみます。

以下のような python のコードを実行します。

WikiPedia のページをスクレイピング

実際に、上の requests で取得した wikipedia のページに対して、どのような情報が取れるか確認しました。コメントで説明と出力結果を載せておきます。

あと、find や find_all を入れ子で使う場合は、値が取れない箇所があるとエラーになってしまうので注意が必要かと思いました(実際にそこでハマってしまいました)。

関連記事

【Python】漢字を分解するライブラリを使ってみた【部首分解】

Python で漢字を部首やさらに細かい部分に分解してくれるライブラリがあったので使ってみました。

記事を読む

【Pandas】 DataFrame と Series のデータ構造について【Python】

今回は、Python でデータ分析を行っていると必ず使う Pandas の DataFrame と

記事を読む

【Python】Windows で ライブラリ(NumPy) をインストールする方法。

Windows の Python(2.X系)で NumPy をインストールしようと思ったら、そもそも

記事を読む

【Pandas】 loc・ilocで1行のみ Series ではなく DataFrame で抽出する方法。

Python の Pandas で DataFrame から loc や iloc を使って行を抽出

記事を読む

【Pandas】 DataFrame で2行の列ごとの差を計算する方法【Python】

今回は、Pandas の DataFrame で、2行間の列ごとの値の差を計算し、その結果を Dat

記事を読む

【Python】時系列データ(為替データ)をグラフ表示してみた。

今回は、pandas・matplotlib ライブラリを使って、時系列データ(為替データ)をグラフ表

記事を読む

【Python】API を使って YouTube から動画情報を収集する方法。

API を使って YouTube から動画情報を収集してみたときのメモです。 OS は Lin

記事を読む

【Google Colaboratory】クラウド上でPythonを使って機械学習を行う。

Python をブラウザ上で実行して、手軽に機械学習ができる環境「Google Colaborato

記事を読む

【matplotlib】 Python で折れ線グラフを描く方法。

今回は、Python の matplotlib というライブラリを使って簡単に折れ線グラフを描く方法

記事を読む

【Python】pip3 で「cannot import name ‘main’」エラーが出たときの対処法。

Python でライブラリをインストールする際に、pipを使います。 Python2 と Py

記事を読む

【投資信託】為替ヘッジのあり・なしについて調べてみた。

海外株式などの投資信託を見ていると、「為替ヘッジ有り」と「為替

【楽天FX】レバレッジやロスカット率を設定する方法。

今回は、楽天FXでレバレッジやロスカット率を設定する方法について紹介し

【MQL4】注文を出す関数について調べてみた【OrderSend】

今回は、EAで注文を出すMQL4の関数「OrderSend()」につい

【楽天MT4】ドル円のスワップとスプレッドについて調べてみた。

楽天MT4で、ドル円(USD/JPY)のスワップポイントとスプレッドに

【MT4】ノートPCを閉じてもEAを実行させ続ける方法【Windows10】

今回は、MT4上でノートPCを閉じてもEAを実行させ続ける方法について

→もっと見る

PAGE TOP ↑