Вопрос по Python и BeautifulSoup, не могу спарсить

Пытаюсь попарсить сайт hh.ru , но что то не выходит. Вот кусочек кода:

def parse_page(self, text: str):
        soup = BeautifulSoup(text,'lxml')
        container = soup.select('div.vacancy-serp > div.vacancy-serp-item.vacancy-serp-item_premium')
        print(container)

Не может найти и все, возвращает пустой список. Хотя в коде элемента страницы все так как я написал, я и копировал селектор, и вставлял в container , все равно пустой список возвращает. Вот кусочек кода элемента страницы:

<div data-qa="vacancy-serp__vacancy vacancy-serp__vacancy_premium" class="vacancy-serp-item vacancy-serp-item_premium">

Перед ним стоит div с классом vacancy-serp . Помогите пожалуйста


Ответы (1 шт):

Автор решения: Mrage

Дело в том, что hh.ru использует javascript для генерации контента, поэтому вам нужно парсить данные используя браузер (selenium). Дело в том,селениум получает страницу в исходном виде(исполняя js файлы), в отличии от запроса к странице, который возвращает вам то, что отдает сервер в обычной ситуации браузеру, а остальной контент уже подгружается со стороны клиента(в браузере), а не отдается вместе со всей страницей с сервера.

→ Ссылка