Не могу найти class в коде элемента
Пишу парсер на python, с библиотеками requests, BeautifulSoup4. Имеется сайт с цитатами, которые нужно вытащить: https://pikacho.ru/luchshie-motiviruyushchie-citaty-velikih-lyudej/ .
Вот код:
from bs4 import BeautifulSoup
import requests
url = 'https://pikacho.ru/luchshie-motiviruyushchie-citaty-velikih-lyudej/'
page = requests.get(url)
citates = []
soup = BeautifulSoup(page.text, "html.parser")
citates = soup.findAll('p', class_ ='необходимый класс')
print (citates)
Проблема заключается в том, что обычно класс располагается сразу после тега, но здесь сразу же за тегом идет текст. Я пробовал найти другие сайты, но они построены похоже. Также я перепробовал несколько встречающихся по коду сайта классов. Если не сложно покажите где находить классы на подобных сайтах. Спасибо.
Ответы (1 шт):
Автор решения: gil9red
→ Ссылка
Заметил, что цитаты находятся в тегах p с тегом strong, в котором указывается автор, сами теги в элементе с классом entry-inner
Получился такой скрипт:
import requests
from bs4 import BeautifulSoup
rs = requests.get('https://pikacho.ru/luchshie-motiviruyushchie-citaty-velikih-lyudej/')
root = BeautifulSoup(rs.content, 'html.parser')
citates = [p.text for p in root.select('.entry-inner > p') if p.strong]
print(citates)