###前提・実現したいこと
あるページ(イトーヨーカドー)から商品名と価格を取得するためのコードを書いていたところ、以下のエラーメッセージが発生しました。
###発生している問題・エラーメッセージ
Traceback (most recent call last): File "ito.py", line 11, in <module> name = i.select_one('li.goodsitem.list_even > p.goodsnameblock').get_text().split() AttributeError: 'NoneType' object has no attribute 'get_text'
###該当のソースコード
python
1import requests 2from urllib.request import urlopen 3from bs4 import BeautifulSoup 4 5html = requests.get("https://www.iy-net.jp/nspc/getproducts.do?shopcd=00126&categoryCode=20002") 6soup = BeautifulSoup(html.text, "html.parser") 7 8 9for i in soup.select('ul > li'): 10 11 name = i.select_one('li.goodsitem.list_even > p.goodsnameblock').get_text().split() 12 13 price = i.select_one('li.goodsitem.list_even > div.goodspriceblock').get_text().split() 14 15 print(name,price)
###試したこと
エラーメッセージは、None型のオブジェクトで、get_textは使えないということなので、CSSセレクタの指定方法が悪いと思い、色々試したのですが、うまくいかなかったので、ご教授頂ければと思います。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/06/02 14:02
2017/06/02 22:56 編集
2017/06/06 05:08
2017/06/06 05:37
2017/06/08 01:51