Получение определенного тега div с супом Beautful

Обычно я бы просто назвал div именем класса, но это не уникально. Единственная уникальная вещь, которую имеет тег div - это слово "data-sc-replace" сразу после div. Это сокращенный пример исходного кода

<div data-sc-replace data-sc-slot="1234" class = "inlineblock" data-sc-params="{'magnet': 'magnet:?......'extension': 'epub', 'stream': '' }"></div>

Как бы я назвал слово data-sc-replace, если оно не привязано к классу или идентификатору?

Это код у меня

import requests
from bs4 import BeautifulSoup

 url_to_scrape = "http://example.com"
 r = requests.get(url_to_scrape)
 soup = BeautifulSoup(r.text, "html5lib")
 list = soup.findAll('div', {'class':'inlineblock'})

 print(list)

 # list = soup.findAll("div", "data-sc-params")
 # list = soup.find('data-sc-replace')
 # list = soup.find('data-sc-params')
 # list = soup.find('div', {'class':'inlineblock'}, 'data-sc-params')

2 ответа

Решение

Используйте селекторы запросов CSS. Находит все divs с data-sc-replace атрибутов.

result = soup.select('div[data-sc-replace]')

Этот отличительный знак представляется атрибутом HTML без значения. Так что попробуйте это:

soup.find('div', attrs = {'data-sc-replace': ''})
# or use find_all() to get all such div containers
Другие вопросы по тегам