Как извлечь значение тега html для определенных классов c, используя красивый суп python? - PullRequest
0 голосов
/ 31 марта 2020

У меня есть одна часть кода, которая работает, и один блок, который не работает. Структура python и html мне кажется одинаковой, поэтому я не могу понять, почему у второго нет выхода.

import requests
from bs4 import BeautifulSoup

headers = {"User-Agent": "Google Chrome v6.9"}
r = requests.get("https://www.oddschecker.com/horse-racing/will-rogers-downs/22:45/winner", headers=headers)

soup = BeautifulSoup(r.content, "html.parser")

for tag in soup.select('.bk-logo-main-90[data-bk]'):
    print(tag['data-bk'],end=",")
for tag in soup.select('.popup selTxt[data-name]'):
    print(tag['data-name'],end=",")

Первое для l oop дает мне список Двухбуквенные аббревиатуры, второе должно дать мне список бегунов в этой гонке, но нет вывода. Оба пытаются найти любые теги определенного класса, которые содержат тег другого имени, и возвращают значение этого тега.

Примеры спецификаций c html, на которые я смотрю в случае, если гонка уже запущена и страница удалена:

<a class="bk-logo-main-90 bk-logo-click" data-bk="B3" data-track="&amp;lid=BookieLogo-B3&amp;lpos=oddsTable" title="Bet365" href="javascript:void(0);">

<a class="popup selTxt" target="" title="View odds history for My Wise Cat" href="https://www.oddschecker.com/horse-racing/will-rogers-downs/22:45/winner/bet-history/my-wise-cat" data-name="My Wise Cat">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...