Я изучаю веб-скрейпинг самостоятельно и пытаюсь удалить рейтинги рецензентов на Yelp в качестве практики. Как правило, я могу использовать селектор CSS или методы XPath для выбора интересующего меня содержимого. Однако эти методы не работают для выбора оценок рецензентов. Например, на следующей странице: https://www.yelp.com/user_details_reviews_self?userid=0S6EI51ej5J7dgYz3-O0lA. Селектор CSS для первого рейтинга — «.stars_2». Однако, если я использую этот селектор в своем коде RSelenium следующим образом:
ratings=remDr$findElements('css selector','.stars_2')
ratings=unlist(lapply(ratings, function(x){x$getElementText()}))
Я получаю НУЛЬ. Я думаю, причина в том, что рейтинг на самом деле является изображением. Я вставляю небольшую часть исходного кода страницы здесь:
<div class="review-content">
<div class="review-content">
<div class="biz-rating biz-rating-very-large clearfix">
<div>
<div class="rating-very-large">
<i class="star-img stars_2" title="2.0 star rating">
<img alt="2.0 star rating" class="offscreen" height="303" src="//s3-media4.fl.yelpcdn.com/assets/srv0/yelp_styleguide/c2252a4cd43e/assets/img/stars/stars_map.png" width="84">
</i>
</div>
</div>
По сути, если я могу извлечь текст из class="stat-img stars_2" или title="2.0 star rating", тогда все в порядке. Может ли кто-нибудь помочь мне в этом?