Как я уже отмечал в комментариях, страница, с которой вы работаете, настолько сильно зависит от javascript, что только urllib
не сможет ее обрезать.Вот пример использования Selenium WebDriver, который получает элемент с этим классом.Вам нужно будет загрузить ChromeDriver и изменить код так, чтобы он указывал, где он находится в вашей системе:
from bs4 import BeautifulSoup
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
def main():
options = Options()
options.add_argument("--headless")
driver = webdriver.Chrome(
options=options, executable_path="C:\chromedriver\chromedriver.exe"
)
try:
driver.get("https://www.instagram.com/p/BszEBehhwet/")
soup = BeautifulSoup(driver.page_source, "html.parser")
print(soup.find("div", {"class": "P9YgZ"}))
finally:
driver.quit()
if __name__ == "__main__":
main()
Результат:
<div class="P9YgZ"><div class="C7I1f X7jCj"><div class="C4VMK"><h2 class="_6lAjh"><a class="FPmhX notranslate TlrDj" href="/thetremason/" title="thetremason">thetremason</a></h2><span>How I’m finna pull up to ya function.</span></div></div></div>