Как мне найти названия продуктов Amazon с запросами-html?

#python #python-requests-html

#python #python-запросы-html

Вопрос:

Я пытался написать программу на python, которая может возвращать список всех названий продуктов на первой странице. У меня есть функция, которая получает URL-адрес на основе того, что вы хотите найти:

 def get_url(search_term):
    template = 'https://www.amazon.com/s?k={}amp;ref=nb_sb_noss_1'
    search_term = search_term.replace(' ', ' ')
    url = template.format(search_term)
    print(url)
    return URL
 

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

 def getInfo(url):
    r = HTMLSession().get(url)
    r.html.render()
    product = {
        'title': r.html.find('.a-size-medium' '.a-color-base' '.a-text-normal', first=True).text,
        'reviews': r.html.find('.a-size-base', first=True).text
    }
    print(product)
 

Однако r.html.find часть не получает нужную мне информацию, она либо возвращает [] , либо нет, если я добавлю first=True . Я пробовал разные способы, например, используя XPath и селектор. Ни один из них, похоже, не сработал. Кто-нибудь может помочь найти способ использовать html.find метод для поиска всех названий продуктов и сохранения их title в словаре product?