Webサイトの規約にのっとり許される範囲でスクレイピングをすべきだが、今回はサイトの内容を取得し、必要な項目を切り出す方法を紹介する。
ステップ1 Webサイトを確認しよう。
今回は本日のYahooの内容を1度だけ取得してみる。
ステップ2 サイトを確認しよう。
今回は、以下の赤枠のテキストを抽出することを目的にし、このテキストはどのような構造になっているかを確認します。
ステップ3 Chromeで構造を確認しよう。
今回はChromeを使いますが、右クリックで検証ボタンを押してみましょう。
ステップ4 該当箇所の構造を確認しよう。
該当の箇所の構造を確認します。
divタグのclass名をコピーして使います。
ステップ4 Pythonで抽出してみよう。
以下のコードだけでOK!!
import requests from bs4 import BeautifulSoup html="https://www.yahoo.co.jp/" source=requests.get(html) # print(source.text) で取得した内容を確認できる soup = BeautifulSoup(source.text, 'html.parser') # TRuzXRRZHRqbqgLUCCco9 ← はdivタグのclass名 contents = soup.find('div', class_="TRuzXRRZHRqbqgLUCCco9") print(contents.text) # -> 首相 バイデン氏と電話会談へNEW
ここら辺の内容と組み合わせて使うと効果的!!
www.pon-x.jp www.pon-x.jp www.pon-x.jp
スクレイピングはサーバーに負荷をかけるなど、管理者に迷惑をかけないよう、また利用規約にのっとって行いましょう。