今日よりちょっと賢い明日、今よりずっと自由な未来

Liberal Arts & IT

IT

【初めてのスクレイピング】とりあえず軽く触ってみたい人へ

投稿日:

『スクレイピング』って何かすごいらしいけどどこで何をするのかイマイチ分からない、という人へ。
スクレイピングのはじめの一歩を紹介します。
さすがにpythonインストール等々は省略するので他でググってください。

まずはPCの装備確認

とりあえずpythonと、スクレイピングに必要なライブラリをインストールするためのpipが必要です。
Macの人はターミナル、Windowsの人はコマンドプロンプトを開き、以下のコマンドで確認しましょう。

python --version
pip --version

Python3以上、pip19以上が必要です。
絶対にPython, pipをインストールしたはずなのに"command not found"などと表示されている場合は、インストールしたときの名称設定?などが間違っている可能性があります。
「python3 --version」や「pip3 --version」を試してください。
これでバージョンが正しく表示された場合は、今後pythonとコマンド打つときは「python3」と読み替えてコマンドを打つ必要があります。

それでもバージョンが表示できない場合はPython, pipのインストールから始める必要があります。
ググってください。

スクレイピングの超基本ライブラリをインストール

いよいよスクレイピングで使うライブラリ「Requests」をインストールしますが、一応まだインストールしていないことを確認しましょう。
以下のコマンドでインストールされているライブラリが一覧で表示されます。

pip list

「requests」がまだインストールされていなかった場合は、以下のコマンドでインストールできます。

pip3 install requests

もう一度pip listで正しくインストールされたことを確認しましょう。

Requestsを使ったコード作成

ここから先はコマンドプロンプトやターミナル上で書くのではなく、拡張子「.py」のファイルを作成してそこに記載します。
以下はインストールしたライブラリ、requestsを使って、google.comのHTMLを書き出すコードです。
今回はscraping.pyと命名しました。

import requests
request = requests.get('https://www.google.com/')
print(request.text)

このコードを書いたファイルを任意の場所に格納し、コマンドプロンプト/ターミナルで実行します。

python scraping.py

コマンドプロンプト/ターミナル上にhtmlのコードがババっとでてくるはずです。
が、このままでは使い物にならないので、別ファイルに書き出す形にしましょう。

取得したHTMLを別ファイルに書き出し

今回はresult.htmlというからファイルを作成し、そこに書き出すことにしました。
pythonでファイル読み書きならopen()やwithが使えます。

import requests

request = requests.get('https://www.google.com/')

path = '格納したパス/result.html'
with open(path, mode='w') as file:
file.write(request.text)

これでrequest.htmlにHTMLが書き込まれたはずです。

ということはGoogleのページを自分のPCから開ける・・・?
かと思いますが、CSSファイルを読み込めないので以下のように質素な画面が出てきます。

次のステップは?

このように、スクレイピングを使うことでwebページのHTMLコードをファイルに書き出すことができます。
が、これだけだとChromeのデベロパーツールを使ってコードをコピーしてくるのと変わらないので、
次のステップはコピーしてきたコードの解析です。

Beautiful Soupとか使って解析していきます。

-IT

Copyright© Liberal Arts & IT , 2021 All Rights Reserved Powered by STINGER.