###前提・実現したいこと
pythonを初めて4か月目です。まだまだ初心者でわからないことが多く
お助けいただけますと幸いです。
BeautifulSoupを使い、リストに格納したURLの指定した要素を取得したい
・メニュー名
・参考料金
・施術方法
・悩み など。
URLの例はこちら↓
https://clinic.beauty.hotpepper.jp/H000481998/treatment-menus/
###該当のソースコード
python
1from bs4 import BeautifulSoup 2import requests 3import pandas as pd 4import time 5 6links = [ 7"https://clinic.beauty.hotpepper.jp/H000481998/treatment-menus/", 8"https://clinic.beauty.hotpepper.jp/H000482096/treatment-menus/", 9] 10 11menu_list = [] 12 13for i in range(len(links)): 14 15 r = requests.get(links[i]) 16 time.sleep(3) 17 soup = BeautifulSoup(r.text,'html.parser') 18 get_menu_list = soup.find(class_ = "treatment-menu") 19 20 for n in range(len(get_menu_list)): 21 get_link = get_menu_list[n].find_all(class_ = "treatment-menu__name") 22 23
###発生している問題・エラーメッセージ
上記のコードの get_menu_list → get_menu_list[n]にすると下記のエラーがでるのですが
なぜエラーが排出されるかわからず。。どなたかお分かりの方いましたらご教示いただけますと幸いです。
python
1 --------------------------------------------------------------------------- 2KeyError Traceback (most recent call last) 3<ipython-input-33-378ee7d4b23b> in <module> 4 9 5 10 for n in range(len(get_menu_list)): 6---> 11 get_link = get_menu_list[n].find_all(class_ = "treatment-menu__name") 7 8c:\users\hayato fukawa\appdata\local\programs\python\python39\lib\site-packages\bs4\element.py in __getitem__(self, key) 9 1404 """tag[key] returns the value of the 'key' attribute for the Tag, 10 1405 and throws an exception if it's not there.""" 11-> 1406 return self.attrs[key] 12 1407 13 1408 def __iter__(self): 14 15KeyError: 0
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/10/15 05:56