【スクレイピング】Beautiful Soupを使用したスクレイピング

スクレイピング
スクレイピング準備記事
関連記事

【やりたいこと】便利なライブラリを使用して、スクレイピングしてみたい!

前回は、lxmlとcssselectを使用して、スクレイピングを行いました。

今回は、Beautiful Soupを使用して、スクレイピングを行います。

 

 

 

【10分でできる】簡単!Beautiful Soupでのスクレイピング

※ダウンロード時間は10分の中に含まれていません。

0.概要

Beautiful Soupをインストールします。次に、サンプルコードを実行します。

1.使用したもの

・Virtual box

Oracle VM VirtualBox

・Vagrant

Vagrant by HashiCorp
Vagrant enables users to create and configure lightweight, reproducible, and portable development environments.

・Term Term

Tera Term (テラターム) プロジェクト日本語トップページ - OSDN
Tera Term は、オリジナルの Tera Term Pro 2.3 の原作者公認の後継版です。オープンソースで開発されており、UTF-8 表示に対応しています。 また、SSH1 対応モジュール TTSSH を拡張し、SSH2 プロトコルをサポートしています。

・Python3.4

2.手順

※下記の記事の内容を完了しているものとして、進めていきます。

①Beautiful Soupのインストール

pip install beautifulsoup4

上記を実行して、Beautiful Soupをインストールします。

②Pythonスクリプトファイルの実行

from bs4 import BeautifulSoup

# HTMLファイルを読み込んでBeautifulSoupオブジェクトを得る。
with open('index.html') as f:
soup = BeautifulSoup(f, 'html.parser')

# find_all()メソッドでa要素のリストを取得して、個々のa要素に対して処理を行う。
for a in soup.find_all('a'):
print(a.get('href'), a.text) # href属性とリンクのテキストを取得して表示する。

Pythonクローリング&スクレイピング

「Pythonクローリング&スクレイピング」のサンプルコードscrape_by_bs4.pyを使用します。

サンプルコードscrape_by_bs4.pyでは、find_all()メソッドを使用して、Webページの文字列から、指定の部分だけ抜き出しています。


python scrape_by_bs4.py

スクリプトファイルを実行します。

記事のURLとタイトルが表示されています。

3.追記

スクレイピングをするときは、用途によって、ライブラリを使い分けるのがいいかもね。

【最後に】参考図書の紹介

以下の書籍は、私がPythonスクレイピングを勉強するにあたって、使用した書籍です。

「Python逆引き大全」は、秀和システムの技術書読み放題サービス「10×Eng」で読めます。最初の2週間は無料、それ以降は、月額900円で利用できます。

「プログラミング超初心者が初心者になるためのPython入門」はkindle unlimitedで読めます。

 

コメント

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