import urllib2
import pandas as pd
from bs4 import BeautifulSoup
x = 0
i = 1
data = []
while (i < 13):
soup = BeautifulSoup(urllib2.urlopen(
'http://games.espn.com/ffl/tools/projections?&slotCategoryId=4&scoringPeriodId=%d&seasonId=2018&startIndex=' % i, +str(x)).read(), 'html')
tableStats = soup.find("table", ("class", "playerTableTable tableBody"))
for row in tableStats.findAll('tr')[2:]:
col = row.findAll('td')
try:
name = col[0].a.string.strip()
opp = col[1].a.string.strip()
rec = col[10].string.strip()
yds = col[11].string.strip()
dt = col[12].string.strip()
pts = col[13].string.strip()
data.append([name, opp, rec, yds, dt, pts])
except Exception as e:
pass
df = pd.DataFrame(data=data, columns=[
'PLAYER', 'OPP', 'REC', 'YDS', 'TD', 'PTS'])
df
i += 1
Я работаю с программой фэнтези-футбола и пытаюсь увеличивать данные за все недели, чтобы я мог создавать кадры данных для 40 лучших игроков за каждую неделю.
Я смогчтобы получить его на любую неделю по своему выбору, вручную введя номер недели в части PeriodId
URL-адреса, но я пытаюсь программно увеличивать его в течение каждой недели, чтобы упростить его.Я пытался использовать PeriodId='+ I +'
и PeriodId=%d
, но продолжаю получать различные ошибки о str и int concatenate и плохих операндах.Есть предложения или советы?