Pythonに新しく、BeautifulSoupと私は、レビューアがYelpにレストランを残す星の数を削り取ろうとしています。PythonとBeautifulSoupを使用してaltタグをスクラップする
これまでのところ、私は次のコードを持っている:
import requests
from bs4 import BeautifulSoup as soup
url = "https://www.yelp.com/biz/monkey-house-cafe-huntington-beach"
r = requests.get(url)
page_soup = soup(r.content, "lxml")
review_container = page_soup.findAll("div", {"class": "review-content"})
review_container[0]
私はJupyterノートにそのコードを実行すると、私が最も最近のレビューに対応し、以下、取得:
<div class="review-content">
<div class="biz-rating biz-rating-large clearfix">
<div>
<div class="i-stars i-stars--regular-5 rating-large" title="5.0 star rating">
<img alt="5.0 star rating" class="offscreen" height="303" src="https://s3-media1.fl.yelpcdn.com/assets/srv0/yelp_design_web/41341496d9db/assets/img/stars/stars.png" width="84"/>
</div>
</div>
<span class="rating-qualifier">
5/10/2017
</span>
</div>
<p lang="en">This place is really fun and cute. I was happy to discover it.. <br/><br/>They also have beer and wine here, which is kind of a nice bonus. The sangria is good..</p>
</div>
私を質問はどのように各レビューから星の数を得ることができますか?
私は、img alt
タグの内容を掻き集めるのが最善だろうと考えていますが、これを行う方法がわかりません。あなたはimg alt
から抽出したい場合は
、私はそれぞれの星の評価は、異なるクラス名を持っていることに気づいたと5のように、上記の例から、タグ - 星評価は 'div class =" i-stars i-stars - regular-5 rating-large'と名付けられていますが、1つ星の評価では別のdivクラス名が付きます。 – grantaguinaldo