Страницы

Поиск по вопросам

четверг, 9 января 2020 г.

Как получить содержимое ссылок?

#python #python_3x #beautiful_soup


Подскажите пожалуйста как получить содержимое ссылок c BeautifulSoup(html, 'lxml')?
Не сами ссылки а название!
есть вот такой код:

html = urllib.request.urlopen('https://kyxni.pro/katalog/')
soup = BeautifulSoup(html, 'html.parser').find('div', class_='builder-posts-wrap')
for i in soup.find_all('h2', class_='post-title'):
print(i)


выводит ссылки:

Кухня ЭЛЕГИЯ

Кухня ДИАНА

Кухня ТЕМЗА

а я хочу получить сами названия: Кухня ЭЛЕГИЯ Кухня ДИАНА Кухня ТЕМЗА и т.д. Подскажите пожалуйста как это реализовать? И как можно открыть сохранённую страницу, что бы каждый раз сайт не грузить? Такая конструкция в коде который выше не работает html = open('kuhni.html').read()


Ответы

Ответ 1



а я хочу получить сами названия: for i in soup.find_all('h2', class_='post-title entry-title'): print(i.text) Когда нужно получить текстовое содержимое, применяйте атрибут text (только не к списку, который возвращается методом find_all). И как можно открыть сохранённую страницу, что бы каждый раз сайт не грузить? Такая конструкция в коде который выше не работает У меня получилось так: html = open('kuhni.html', encoding='utf8').read() P.S. На будущее. Приводите текст ошибок.

Ответ 2



Можно так: In [210]: [x.text for x in soup.select("h2.post-title a")] Out[210]: ['Кухня ЭЛЕГИЯ', 'Кухня ДИАНА', 'Кухня ТЕМЗА', 'Кухня ОРХИДЕЯ', 'Кухня CRYSTAL', 'Кухня SAFARI', 'Кухня SCANDIA', 'Кухня INVERNO', 'Кухня МЕРАНО', 'Кухня МОНТЕБЬЯНКО АРГЕНТО', 'Кухня МОНТЕБЬЯНКО', 'Кухня ДОЛОМИТА', 'Кухня ГАРДА', 'Кухня АСТИ', 'Кухня КВАТРО ГРАФИТ', 'Кухня КВАТРО БЕЛЫЙ', 'Кухня КВАТРО ПЕСОЧНЫЙ', 'Кухня МАНЧЕСТЕР ФИСТАШКА', 'Кухня МАНЧЕСТЕР ЛЕН', 'Кухня МИЛАН БЬЯНКО', 'Кухня ОКСФОРД БЕЛЫЙ ДУБ', 'Кухня ОКСФОРД ГРАФИТ', 'Кухня КАПРИ', 'Кухня ЭЛЬБА', 'Кухня КОРТИНА', 'Кухня ГЕСТИЯ', 'Кухня ДЕМЕТРА', 'Кухня АСКОТ', 'Кухня РИАЛЬТО', 'Кухня ТРИЕСТЕ', 'Кухня ВЕНЕЦИЯ', 'Кухня ФИРЕНЦЕ', 'Кухня СОРРЕНТО', 'Кухня ПОЗИТАНО', 'Кухня ВИКТОРИЯ', 'Кухня РОМАНТИКА', 'Кухня НИКА НОЧЕ', 'Кухня НИКА', 'Кухня НИКА Д’ОРО БЕЛАЯ', 'Кухня НИКА Д’ОРО БЕЖЕВАЯ', 'Кухня АФИНА АРГЕНТО', 'Кухня АФИНА ОРО', 'Кухня ТУРИН', 'Кухня ПРОВАНС ПРАЙМЕР', 'Кухня ПРОВАНС', 'Кухня ПОРТОФИНО КАПУЧИНО', 'Кухня ПОРТОФИНО БЕЛАЯ', 'Кухня АМАЛЬФИ СЕРАЯ', 'Кухня АМАЛЬФИ БЕЖЕВАЯ', 'Кухня РОЗА ДЕКАПЕ', 'Кухня РОЗА', 'Кухня ЛУКРЕЦИЯ ЗОЛОТАЯ', 'Кухня КОРИ', 'Кухня ЛУКРЕЦИЯ', 'Кухня ВЕРОНА']

Комментариев нет:

Отправить комментарий