хотел создать программу, которая принимает название кроссовок, и выдаёт все варианты , которые нашлись на сайте. Код не работает, не понимаю почему

import re
import requests
from bs4 import BeautifulSoup
def FunkyDunky(small_name):
    url = 'https://funkydunky.ru/search/?query=%D0%BE%D0%B1%D1%83%D0%B2%D1%8C'
    brand = []
    response = requests.get(url)
    soup = BeautifulSoup(response.text, 'lxml')
    names = soup.find_all('div', {'class':'product-title'})
    prices = soup.find_all('b', class_ ='price-text')
    for brand_name in names:
        brand_name = brand_name.find('span', {'class': 'value'})
        brand_name = brand_name.get_text(strip=True)
        brand.append(brand_name)
    for i in range(0, len(names)):
        full_name = (brand[i] + names[i].text) 
        print(full_name)
        if re.search(small_name,full_name):
            print(brand[i] + ' ' + names[i].text + ' -  ' + prices[i].text)
brand = input('Введите бренд кроссовок: ')
model = input('Введите модель кроссовок: ')
small_name = brand.title() + ' ' + model.upper()
FunkyDunky(small_name)

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

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

Код ниже может вернуть нормальную страницу

import re
import requests
from bs4 import BeautifulSoup
from fake_useragent import UserAgent


def FunkyDunky(small_name):
    url = 'https://funkydunky.ru/search/?query=%D0%BE%D0%B1%D1%83%D0%B2%D1%8C'
    brand = []
    ua = UserAgent()
    headers = {'User-Agent': ua.random}
    response = requests.get(
                        url, 
                        headers=headers,
                        )
    soup = BeautifulSoup(response.text, 'html.parser')
    names = soup.find_all('div', {'class':'product-title'})
    prices = soup.find_all('b', class_ ='price-text')
→ Ссылка