diadia

興味があることをやってみる

BeautifulSoupのメモ

BeautifulSoupのメモ

windowsで使う場合には、anacondaで使うと良い。必要なライブラリはbeautifulSoup4とrequestsまたはurllib.requestである。

使い方のイメージ

  1. まず取得したい情報があるページのURLを規定する。
  2. URLをもとにページを開く
  3. 開いたページをbeautifulsoupを使いhtml情報に変換する
  4. html情報からほしいタグや属性を定め、情報を取得する

具体的な手続き

from bs4 import BeautifulSoup
import requests
from time import sleep

URL = "https://hogehoge"

response = requests.get(URL)
soup = BeautifulSoup(response.text, "html.parser")
date = soup.find("h3")
content = soup.find(class="hoge").text


要素の取得方法

基本的にfindまたはfind_allを使って要素を取得していく。そしてurlやテキストといった種類に応じた取得手段を使う。find()は一要素を取得する。一方find_all()はマッチする要素をリスト型に似たデータ型として情報が返される。find_allを使った後は基本的にfor構文を使い一要素にバラしたり、リスト型データ[-1]として一要素として抜き出す。 一要素に抜き出された情報はその後に.textでテキスト情報の取得, .get("href")でurlを、get("src")で画像urlを取得する。