#スクレイピングとは
「webページから情報を取得し、加工すること」
似ている技術に「クローリング」がある。
両者の違いは取得した情報を加工するかどうかである。
クローリング:加工しない
スクレイピング:加工する
#プログラムの名称
スクレイピング:スクレイパー
クローリング:クローラー
#スクレイピングをするときに役に立つライブラリ
・Requests
>webページを取得
・BeautifulSoup
>webページからHTMLを抽出
・selenium
>ブラウザを操作
#Requestsの基本操作
requests.py
import requests
#request.get('url')でページの情報を格納
r = requests.get('https://news.yahoo.co.jp')
#BeautifulSoupの基本操作
soup.py
from bs4 import BeautifulSoup
#例として解析するhtmlを用意してるだけ
html = "<h1>heygays</h1>"
#第一引数:解析したいもの, 第二引数:parser指定(後に説明)
soup = BeautifulSoup(html,"html.parser")
#取得部分の指定
print(soup.select("h1"))
出力
[<h1>heygays</h1>]
BeautifulSoupでは第一引数に何を解析したいか、第二引数にパーサを指定する。
パーサ:構文解析を行うためのプログラムの総称(今回はHTMLを解析するためhtml.perser)
最後に取得したい部分をselect()で指定する。
#RequestsとBeautifulSoupの併用
main.py
import requests
from bs4 import BeautifulSoup
r = requests.get('https://news.yahoo.co.jp/')
soup = BeautifulSoup(r.content,'html.parser')
print(soup.find('ul','newsFeed_list'))
#最後に
htmlのどの部分を取得すると自分の欲しい情報が手に入るかが分からない。