#概要
PythonのBeautifulSoup4で特定のページの特定のclassの内容を取得する方法のメモ。
#インストール
必要なライブラリをインストール
$ pip install beautifulsoup4
#スクレイピング
Qiitaの自分のプロフィール欄を題材に試してみます。
自分の記事一覧から各記事のタイトルを取得します。
##ソースコードはこちら。
必要に応じて対象サイトのURL、要素とclass名を書き換えてください。
scraping.py
#モジュールのインポート
import urllib.request
from bs4 import BeautifulSoup
#対象のサイトURL
url = "https://qiita.com/sksk_go"
#URLリソースを開く
res = urllib.request.urlopen(url)
#インスタンスの作成
soup = BeautifulSoup(res, 'html.parser')
#必要な要素とclass名
name = soup.find_all("div", class_="ItemLink__title")
#取得したタイトル情報を出力
ret = []
for t in name:
ret.append(t.text)
print(ret) # ['item1', 'item2', ~]
##実行結果
$ python scraping.py
['AIに自分の顔を判定させたら失敗した話(番外編)', '○○に似てると言われ困ったので、AIに判定させてみた', 'obnizで夏っぽいことしてみた', 'LINEで減塩量を可視化しようとした話', 'IoTを活用して、ただいまと言ったらおかえりが返ってくる仕組みを
作る', '悩める恋心を助けるためのLINE Botを作ってみた']
成功してますね。
業務でもたまに使うのでメモ代わりに。