Запрос XHR GET отправляется на URL через библиотеку requests
. Html объекта ответа обрабатывается BeautifulSoup.
Синтаксис селектора CSS используется для извлечения информации из сгенерированного объекта BeautifulSoup
.
.nws__title--card
является селектором класса . Выбирает для элементов с атрибутом класса nws__title--card
. Тогда >
является дочерним комбинатором , указывающим, что элементы тега h2
справа должны быть дочерними элементами для класса с классом, указанным слева. H2 - селектор типа .
Если вы введете этот селектор на вкладке элементов инструментов разработчика, вы увидите, что есть только одно совпадение

Итак, эта часть
select(".nws__title--card > h2")
возвращает список всех сопоставленных элементов на основе селектора, переданного в select
внутри "". Тогда
select(".nws__title--card > h2")[0]
выбирает для первого элемента. В этом случае вы можете просто заменить это методом, который возвращает только одно совпадение (тогда индекс не требуется):
select_one(".nws__title--card > h2")
h2 - тег заголовка. Он получает заголовок со страницы. Затем он добавляется в словарь в качестве пары значений для ключа title
dict["title"]
Та же логика применяется для других элементов, которые сопоставляются и добавляются в словарь.
Либо возвращается словарь, если процесс завершается успешно, или none
, если происходит сбой.