前提・実現したいこと
pythonでスクレイピングの練習をしています。
スクレイピング → リストに格納 → 簡単なバスケット分析をしたいです。
最初のスクレイピングの段階で欲しい値が取れません。
エラーの改善方法並びに他の段階で間違っているコードがありましたら
アドバイスお願い致します。
プログラミング初心者且つ初投稿で抜けている情報ありましたら、
恐れ入りますがご指摘お願い致します。
発生している問題・エラーメッセージ
エラーメッセージ AttributeError: ResultSet object has no attribute 'text'. You're probably treating a list of items like a single item. Did you call find_all() when you meant to call find()?
該当のソースコード
python
1 2from urllib.request import urlopen 3from bs4 import BeautifulSoup 4 5 6 7#当選番号のURL 8 9html = urlopen('http://www.jabezadvisory.com/takarakuji/kuji/pulls.html') 10 11soup = BeautifulSoup(html.read(), 'html.parser') 12 13 14#取得できているかチェック 15print(soup.find_all('p').text) 16 17 18#分けてリストに格納 19 20# A = soup.rstrip().split(",") 21 22 23#リスト内をの要素を計量 24#本番はA(リスト)に代入できるはず 25 26# A = ['B',C', 'D', 'E', 'F', 'G'] 27# print(Counter(A)) 28
試したこと
エラーがどの段階で出ているか確かめる為に.textを消したらpタグの表示はできました。
しかし、テキスト(数字)だけ取得したいです。
そのため、次の段階で.stringも試しましたが同様にエラーが発生しました。
補足情報(FW/ツールのバージョンなど)
環境は Google Colaboratoryです。
FWはurllib、request、BS4を使いました。
回答1件
あなたの回答
tips
プレビュー