Bắt đầu ngayBắt đầu miễn phí

Biến trang web thành dữ liệu với BeautifulSoup: lấy các siêu liên kết

Trong bài này, bạn sẽ tìm cách trích xuất các URL của siêu liên kết từ trang web của BDFL. Trong quá trình đó, bạn sẽ làm quen thân với phương thức find_all() của soup.

Bài tập này là một phần của khóa học

Nhập dữ liệu nâng cao trong Python

Xem khóa học

Hướng dẫn bài tập

  • Dùng phương thức find_all() để tìm tất cả siêu liên kết trong soup, nhớ rằng siêu liên kết được xác định bởi thẻ HTML <a> nhưng được truyền cho find_all() mà không có dấu ngoặc nhọn; lưu kết quả vào biến a_tags.
  • Biến a_tags là một tập kết quả: nhiệm vụ của bạn là duyệt qua nó bằng vòng lặp for và in ra các URL thực của những siêu liên kết; để làm điều này, với mỗi phần tử link trong a_tags, bạn cần print() link.get('href').

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# 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 ____:
    ____
Chỉnh sửa và Chạy Mã