実現したいこと
Webスクレイピングで価格情報を取得したい
前提
Pythonでwebスクレイピングのコードを作成しています。
発生している問題・エラーメッセージ
コード内には価格と思われる文字列はあるものの、
<span>に関するものはNoneTypeとなってしまい抽出できません。
該当のソースコード
Python
import pandas as pd
import requests
from bs4 import BeautifulSoup
エクセルファイルを読み込む
excel_file = pd.read_excel('/Users/takahisayonezu/Desktop/URLリスト_0425.xlsx')
URLリストを取得する
url_list = excel_file['URL'].tolist()
取得した情報を格納するためのリストを用意する
descriptions = []
各URLから情報を取得する
for url in url_list:
# URLを読み込む
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
価格を取得する
price = soup.find('span', {'class': 'chr-lot-header__value-field'}) if price is not None: text = price.get_text(separator="\n") price = text.strip() else: price = ''
### 補足情報(FW/ツールのバージョンなど) 以下が情報を抜き出したいページです。 欲しい情報はPriceRealised USD 88,200の部分です。 https://onlineonly.christies.com/s/first-open-post-war-contemporary-art/bob-thompson-1936-1966-1/172454?ldp_breadcrumb=back ChatGPTを使いながら何度も修正を繰り返したのですが、何度やってもNone Typeとなってしまいました。