Python でスクレイピングするといえば BeautifulSoup です。
インストール
$ pip install beautifulsoup4
使い方
import requests from bs4 import BeautifulSoup response = requests.get(URL) soup = BeautifulSoup(response.text, "html.parser")
HTML 形式のテキストを渡すことで BeautifulSoup オブジェクトを作ることができます。第2引数のパーサーを指定しないと warning が出ます。
aタグ(リンク)を全部取得する
anchors = soup.find_all('a') for anchor in anchors: print(anchor.get('href'))
全てのタグを取得するには find_all
を使用します。aタグを指定することで BeautifulSoup オブジェクト内のすべてのaタグオブジェクトのリストを取得できます。
属性を取得するには get
を使います。アンカーテキストを取得したい場合には
for anchor in anchors: print(anchor.string)
とすることでテキストのみを取得することができます。