Превращаем веб-страницу в данные с помощью BeautifulSoup: извлечение гиперссылок
В этом упражнении вы научитесь извлекать URL-адреса гиперссылок с веб-страницы BDFL. В процессе вы хорошо познакомитесь с методом find_all() библиотеки BeautifulSoup.
Это упражнение является частью курса
Импорт данных в Python: средний уровень
Инструкции к упражнению
- Используйте метод
find_all(), чтобы найти все гиперссылки в объектеsoup. Помните, что гиперссылки определяются HTML-тегом<a>, однако вfind_all()он передаётся без угловых скобок. Сохраните результат в переменнуюa_tags. - Переменная
a_tagsсодержит результирующее множество: ваша задача — перебрать его элементы с помощью циклаforи вывести на экран фактические URL-адреса гиперссылок. Для этого для каждого элементаlinkвa_tagsвызовитеprint()с аргументомlink.get('href').
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Import packages
import requests
from bs4 import BeautifulSoup
# Specify url
url = 'https://www.python.org/~guido/'
# Package the request, send the request and catch the response: r
r = requests.get(url)
# Extracts the response as html: html_doc
html_doc = r.text
# create a BeautifulSoup object from the HTML: soup
soup = BeautifulSoup(html_doc)
# Print the title of Guido's webpage
print(soup.title)
# Find all 'a' tags (which define hyperlinks): a_tags
# Print the URLs to the shell
for ____ in ____:
____