@ImNotANoobby
учусь на программиста

Как мне спарсить страничку со всеми товарами, если после после нажатия кнопки «показывать все товары», ссылка не меняется?

Когда я считываю все ссылки товаров на страничке, мне парсятся только те, которые отображаются. На страничке есть возможность выбрать отображение всех товаров сразу, но это действие не меняет ссылку. Как мне получить страничку со всеми товарами?
<code lang="python">
import requests
from bs4 import BeautifulSoup

url = 'https://somesite.com'
headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36'}
r = requests.get(url, headers=headers)
r.encoding = 'utf-8'
print(r.encoding)
 
 
soup = BeautifulSoup(r.content, 'html.parser')
res = soup.select(".block_product")


for a in res:
   name = a.select('a')
   price = a.select('.jshop_price span')

   # print(a[0].text)
   print(name[0].text)
   print(price[0].text)
</code>
  • Вопрос задан
  • 91 просмотр
Решения вопроса 1
@ImNotANoobby Автор вопроса
учусь на программиста
Зашел в инспектор, выбрал эту кнопку смены количества отображаемых товаров.
<select id="limit" name="limit" class="inputbox" onchange="submitListProductFilters()">
	<option value="5">5</option>
	<option value="10">10</option>
	<option value="12">12</option>
	<option value="15">15</option>
	<option value="20">20</option>
	<option value="25">25</option>
	<option value="50">50</option>
	<option value="99999" selected="selected">Все</option>
</select>

и добавил у url ?limit=99999
Заработало
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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