Сайт подгружает информацию JS-ом, который отправляет запрос на сервер. Можно посмотреть, какие запросы выполняются. (Firefox - Ctrl + Shift + E)
И можно заметить, что при переходе на другую страницу выполняется какой-то запрос.
GET - https://101hotels.com/api/facility/search
Query string:
r=0.0000530041150925655330.07492892309472692
params={"city_ids":[13],"category_url":"points"}
page=2
Выполнил запрос без параметра r, и всё работает.
import requests
import json
def gen_params(page, city_ids=[13]):
return {
'page': page,
'params': json.dumps({
'city_ids': city_ids,
'category_url': 'points'
})
}
data = []
for page in range(1, 6):
r = requests.get("https://101hotels.com/api/facility/search", params=gen_params(page))
data.extend(r.json()['response'])
print(json.dumps(data[-1], indent=4, ensure_ascii=False, sort_keys=True))