pphhpphh, поучи немножко, как веб работает, перед тем как парсеры писать. Сэкономишь кучу времени потом.
Сейчас далеко не 90е, и на большинстве страниц полно JS-скриптов. Они, в том числе, могут делать фоновые (без перезагрузки страницы) запросы по ходу работы сайта. Так, например, реализуется "бесконечная лента" - по достижению низа страницы делается фоновый запрос, и новый контент подставляется вниз.
Некоторые сайты на этом вообще целиком построены - отдают основным запросом только болванку, а содержимое туда подсовывают фоновыми запросами. Как следствие, то, что ты выкачиваешь через requests, и то, что увидит пользователь в браузере - две большие разницы.
Соответственно, тут нужно:
1. Идентифицировать, какие фоновые запросы делает сайт. Инструменты разработчика в браузере в помощь.
2. Определить, какие из этих запросов подгружают нужную тебе информацию, и в каком виде она представлена. Нередко там не HTML-разметка, а формат JSON, с которым куда проще работать.
3. Определить, что нужно для выполнения этих запросов: какие URL дёргать, какие параметры подставлять, и т.д.
4. Попробовать имитировать только эти запросы.
Успех зависит от сайта, многие пытаются защищаться от такого, кто во что горазд.
Альтернативный вариант - использовать безголовый браузер. Но там своя гора проблем: это куда более ресурсоёмко, нужно дождаться полной прогрузки сайта, API для поиска там тоже своё. Так что я бы переходил к этому варианту только если имитировать запросы самому не вышло.