Я пишу простой веб-скребок, чтобы извлечь время игры для баскетбольных игр ncaa. Код не должен быть красивым, просто работать. Я извлек значение из других тегов span на той же странице, но по какой-то причине я не могу заставить его работать.
from bs4 import BeautifulSoup as soup
import requests
url = 'http://www.espn.com/mens-college-basketball/game/_/id/401123420'
response = requests.get(url)
soupy = soup(response.content, 'html.parser')
containers = soupy.findAll("div",{"class" : "team-container"})
for container in containers:
spans = container.findAll("span")
divs = container.find("div",{"class": "record"})
ranks = spans[0].text
team_name = spans[1].text
team_mascot = spans[2].text
team_abbr = spans[3].text
team_record = divs.text
time_container = soupy.find("span", {"class":"time game-time"})
game_times = time_container.text
refs_container = soupy.find("div", {"class" : "game-info-note__container"})
refs = refs_container.text
print(ranks)
print(team_name)
print(team_mascot)
print(team_abbr)
print(team_record)
print(game_times)
print(refs)
Конкретный код, который меня беспокоит, это:
time_container = soupy.find("span", {"class":"time game-time"})
game_times = time_container.text
Я только что предоставил остальную часть кода, чтобы показать, что .text на других тегах span работает. Время - единственные данные, которые я действительно хочу. Я просто получаю пустую строку с тем, как мой код в настоящее время.
Это вывод кода, который я получаю при вызове time_container
<span class="time game-time" data-dateformat="time1" data-showtimezone="true"></span>
или просто '', когда я делаю game_times.
Вот строка HTML с сайта:
<span class="time game-time" data-dateformat="time1" data-showtimezone="true">6:10 PM CT</span>
Я не понимаю, почему 6:10 вечера исчезли, когда я запустил сценарий.