В первом выражении вы привязываете soup
к проанализированному объекту BeautifulSoup:
soup = soup(html, 'html.parser')
После печати вы теперь вызываете этот повторно привязанный объект (soup
); например случай не лучших выбранных имен переменных?
Каков ваш импорт, откуда приходит этот soup()
конструктор?
Это гораздо более кратко - и менее подвержено ошибкам - если вы придерживаетесь обычного способа вызова конструктора / создания объекта - используя BeautifulSoup()
напрямую:
from bs4 import BeautifulSoup
# your code to get some html
soup = BeautifulSoup(html, 'html.parser')
print(soup)
soup = BeautifulSoup(html, 'html.parser')
print(soup)