Я тоже новичок в пандах.
Я думаю, что это хороший вопрос, и я уверен, что есть простой способ сделать это, но это то, что я придумал ...
import numpy as np
from bs4 import BeautifulSoup
import requests
import pandas as pd
import time
symbols = ['WYNN', 'FL', 'TTWO']
stocklist = []
for c in range(len(symbols)):
url = 'https://www.nasdaq.com/symbol/'+symbols[c]+'/historical'
r = requests.get(url)
soup = BeautifulSoup(r.text, 'html.parser')
historicaldata = soup.find('div', {'id': 'quotes_content_left_pnlAJAX'})
data_rows = historicaldata.findAll('tr')[2:]
stock_data = [[td.getText().strip() for td in data_rows[a].findAll('td')]for a in range(len(data_rows))]
stocklist.append(stock_data)
df0 = pd.DataFrame(stocklist[0], columns = ['Date', 'Open '+symbols[0], 'High '+symbols[0], 'Low '+symbols[0], 'Close '+symbols[0], 'Volume '+symbols[0]])
df0.set_index('Date', inplace=True)
df1 = pd.DataFrame(stocklist[1], columns = ['Date', 'Open '+symbols[1], 'High '+symbols[1], 'Low '+symbols[1], 'Close '+symbols[1], 'Volume '+symbols[1]])
df1.set_index('Date', inplace=True)
df2 = pd.DataFrame(stocklist[2], columns = ['Date', 'Open '+symbols[2], 'High '+symbols[2], 'Low '+symbols[2], 'Close '+symbols[2], 'Volume '+symbols[2]])
df2.set_index('Date', inplace=True)
df3 = df0.merge(df1, left_index=True, right_index=True)
df = df3.merge(df2, left_index=True, right_index=True)
VW = df['Volume WYNN'].str.replace(',','').astype(int)
FL = df['Volume FL'].str.replace(',','').astype(int)
TTWO = df['Volume TTWO'].str.replace(',','').astype(int)
df['Volume WYNN'] = VW
df['Volume FL'] = FL
df['Volume TTWO'] = TTWO
df.to_excel('stock data.xlsx',index=False)