@Bergis

Как спарсить значения?

from bs4 import BeautifulSoup 
import requests

a = requests.get("url")
soup = BeautifulSoup(a.content, 'html.parser') 
b = soup.findAll("a", {"class": "ui-link review-votes__item review-votes__dislike review-votes__dislike_with_count"})
print(b)

После запуска получаю:
[<a class="ui-link review-votes__item review-votes__dislike review-votes__dislike_with_count" data-shmid="reviewDislike" href="#" target="_self">-8692</a>, <a class="ui-link review-votes__item review-votes__dislike review-votes__dislike_with_count" data-shmid="reviewDislike" href="#" target="_self">-8364</a>, <a class="ui-link review-votes__item review-votes__dislike review-votes__dislike_with_count" data-shmid="reviewDislike" href="#" target="_self">-8356</a>, <a class="ui-link review-votes__item review-votes__dislike review-votes__dislike_with_count" data-shmid="reviewDislike" href="#" target="_self">-8349</a>]

Как получить только значения ?
  • Вопрос задан
  • 119 просмотров
Решения вопроса 1
Так как ты используешь find_all (да, можно писать маленькими буквами), то у тебя получается список с искомыми значениями.
С помощью цикла, прокручиваешь список, и получаешь значение, с помощью .text
for i in b:
    print(i.text) #Ну или делаешь что тебе надо.

Кстати, когда указываешь класс, можно делать это так:
soup.findAll("a", class_= "ui-link review-votes__item review-votes__dislike review-votes__dislike_with_count")


Это когда класс, ещё так можно id указывать.

Лучше использовать 'lxml' вместо 'html.parser', он работает быстрее, так как написан на Си.
Ставится так: pip install lxml
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы