Парсер на Python не выдает нужное кол-во информации

Парсер должен вытягивать 100 вакансий со страницы, а вытягивает 20. Почему именно 20 не пойму. В программе фигурирует число 20 как кол-во страниц на сайте, почему оно попадает в циклы я не знаю.

from bs4 import BeautifulSoup
URL = 'https://hh.ru/search/vacancy?no_magic=true&L_save_area=true&text=Python&excluded_text=учитель&salary=&currency_code=RUR&education=not_required_or_not_specified&education=special_secondary&experience=doesNotMatter&order_by=relevance&search_period=0&items_on_page=100'
headers = {
        "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
        "user-agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.106 Safari/537.36"
    }


def hh_request(url, retry = 5): 
    try:
        response = requests.get(url=url, headers=headers)
        print(f"[+] {url} {response.status_code}")
    except Exception as ex:
        if retry:
            print(f'[INFO] retry={retry} => {url}')
            return hh_request(url, retry=(retry-1))
        else:
            raise
    else:
        return response



def extract_max_page(request):
    hh_soup = BeautifulSoup(request.text, 'lxml')
    print(f'{hh_soup.title.text}\n')
    paginator = hh_soup.find_all('span', {'class':'pager-item-not-in-short-range'})
    
    pages = []
    for page in paginator:
        pages.append(int(page.find('a').text))
    max_page = (pages[-1])
    return max_page
    
    
def vacancy_extractor(max_page):
    vacancy_title = []
    for page in range(max_page):
        response = hh_request(f'{URL}&page={page}')
        soup = BeautifulSoup(response.text, 'lxml')
        results = soup.find_all('a', {'class': 'serp-item__title'})
        for result in results:
            vacancy_title.append(result.text)
    return vacancy_title


def main():
    request = hh_request(URL)
    max_page = extract_max_page(request)
    print(max_page)
    vacancy_title = vacancy_extractor(max_page)
    print(vacancy_title)
    print(len(vacancy_title))
    
        

if __name__ == "__main__":
    main()```

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