Ошибка атрибута: объект ‘str’ не имеет атрибута ‘потомки’ — BeautifulSoup4

#python #beautifulsoup

#python #beautifulsoup

Вопрос:

Я хочу очистить s в определенном URL-адресе = https://www.sortlist.fr/pub и выберите конкретный, в котором найдено следующее значение = «Dupont Lewis». Я использую следующий код :

 import requests
from bs4 import BeautifulSoup
r = requests.get("https://www.sortlist.fr/pub")
BeautifulSoup.find_all("a")
BeautifulSoup("a")
search = BeautifulSoup.select_one("a[title*=Dupont Lewis]")
if len(search)>0:
    print ('I find')
else:
    print ('None')
  

Но я получаю следующую ошибку =»Ошибка атрибута: объект ‘str’ не имеет атрибута ‘потомки'»

Кто-нибудь может мне помочь, пожалуйста?

Комментарии:

1. Возможно, вы захотите сначала прочитать документацию BeautifulSoup: crummy.com/software/BeautifulSoup/bs4/doc

Ответ №1:

Ошибка заключается в том, что вы не создаете суп из ответа сервера:

 import requests
from bs4 import BeautifulSoup

r = requests.get("https://www.sortlist.fr/pub")
soup = BeautifulSoup(r.content, 'html.parser')          # <-- create a soup
search = soup.select_one('a[title*="Dupont Lewis"]')    # <-- put "Dupont Lewis" inside ""
if search:                                              # <-- len() isn't necessary, because of .select_one
    print ('I find')
else:
    print ('None')
  

С принтами:

 I find