Прежде чем приступить к кодированию, нам нужно убедиться, что в нашей системе есть следующие библиотеки — если они не установлены —

Установка библиотек

запросы на установку pip
pip install beautifulsoup4
pip install openpyxl

Импорт библиотек

Мы использовали библиотеку requests для получения доступа к URL-адресу, BeautifulSoup для перехода на веб-сайт и извлечения данных и openpyxl для импорта сгенерированных данных в наша локальная машина.

import requests
from bs4 import BeautifulSoup
import openpyxl

Получение URL и получение данных

url=requests.get("https://www.imdb.com/chart/toptv")
print(url)
soup=BeautifulSoup(url.text,'html.parser')
print(soup)

Мы извлекли данные с заданного URL и использовали 'html.parser' .

Извлечение данных

Теперь мы будем использовать find() и find_all() для извлечения необходимых данных.

tv_shows=soup.find('tbody', class_="lister-list").find_all('tr')
tv_shows

Мы выполним цикл ForLoop для получения нужного столбца.

for i in tv_shows:
    rank=i.find('td',class_="titleColumn").get_text(strip=True)[0]
    name=i.find('td',class_="titleColumn").a.text
    rating=i.find('td',class_="ratingColumn imdbRating").strong.text
    year=i.find('td',class_="titleColumn").span.text.strip('()')
    print(rank,name,rating,year)
    sheet.append([rank,name,rating,year])

Пример вывода

Сохранение сгенерированных данных в формате Excel при сохранении на локальном компьютере

используя openpyxl, мы добьемся этого

excel=openpyxl.Workbook()
print(excel.sheetnames)
sheet=excel.active
sheet.title='Top Rated 250 TV-Shows'
print(sheet.title)
sheet.append(['Rank','Title','Rating','Year'])
excel.save('IMDB Top 250 TV Shows.xlxs')

Вот и все

Последние мысли

Я надеюсь, что вы найдете эту статью полезной и она того стоила. Не стесняйтесь поделиться этой статьей со своими друзьями-программистами.

Удачного программирования!